Skip to content

Starter Kits ​

Three complete Laravel 13 + Filament 5 apps with real content, a working admin panel and a test suite. Each is a public repository you clone and own. Pick the one closest to what you are building and change it until it is yours.

KitShapeSample contentTenancy
starter-siteCompany websiteNorthbay Joinery, a workshop in LeithOne site
starter-storeOnline shopKiln Street, a pottery in BristolOne store
starter-multistoreStore platformStallhouse, with a tea shop and a plant shopOne store per merchant

Install ​

You need PHP 8.3+, Composer 2 and a FilamentCraft license. No Node, no build step.

bash
git clone https://github.com/filamentcraft/starter-store my-shop
cd my-shop
composer setup

composer setup asks for your license email and key, checks them against packages.filamentcraft.dev, installs the dependencies, creates a SQLite database, seeds the content and prints where to sign in. Then run composer dev and open http://localhost:8000. Every kit signs in as admin@example.com with the password password.

Setup never prompts when it finds credentials already: COMPOSER_AUTH, an auth.json, your global Composer credentials, or FILAMENTCRAFT_EMAIL and FILAMENTCRAFT_KEY in the environment. That makes it safe to run on servers and in CI.

Company site ​

The Northbay Joinery homepage

A single-site install with public_routes on, so FilamentCraft serves every page from /.

  • Five pages: home, work, services with pricing, about and contact.
  • Header, footer and three color schemes set up as a coherent theme.
  • A contact form whose messages land in the panel's Inbox.
  • 21 photographs registered in the media library with alt text.
  • Per-page SEO descriptions and a social card image.
  • A dashboard listing every page with shortcuts into the editor.

The services page with tabs, pricing and FAQ

The visual editor open on the Northbay homepage

The content is seeded from app/Blueprints, one class per page. After the first seed it lives in the database and is edited in the visual editor.

Online shop ​

The Kiln Street homepage

A single store wired to FilamentCraft's commerce sections through a Storefront implementation backed by ordinary Eloquent models.

  • 19 products in four categories, with photos, options, spec tables, sale prices and a sold-out item.
  • Shop, product, basket and checkout pages. The product page is one dynamic template that serves /products/{slug}.
  • Cash-on-delivery checkout that locks stock, creates the order and emails the customer.
  • Filament resources for products, categories and orders. Orders move through confirm, ship and deliver; cancelling restocks. New orders ring the panel's notification bell.
  • A dashboard with orders to handle, 30-day sales and stock alerts.

A product page with options, spec table and related products

Cash-on-delivery checkout with the order summary

The Kiln Street dashboard

An order with Mark shipped and Cancel order actions

Editing a product: photos, options, price and stock

Store platform ​

The Stallhouse platform page

A multi-tenant platform: anyone registers, opens a store and gets a storefront at /{store} straight away. It follows the Tenancy guide end to end.

  • Store is both the Filament tenant and the site owner, via FilamentCraftPlugin::tenantSites(Store::class)->allowSiteCreation(false).
  • Stores are served by Route::filamentCraftTenant() with a reserved-slug pattern, so /app and the package's own routes are never mistaken for a store.
  • Registering a store builds its storefront from a site blueprint in the same request.
  • Products, categories, orders, baskets and notifications are scoped per store, and each store has its own currency and order numbers.
  • Two stores come seeded, each with its own theme, fonts and pages: Second Steep (tea, pounds) and Understory (plants, euros).

Second Steep, one of the two seeded stores

The Open a store form a new merchant fills in

A store's dashboard in the merchant panel

The visual editor inside a merchant's store

FilamentCraft's Storefront is one shared service, so the kit resolves the current store per call: from the site the tenant route bound, the store field on basket posts, the template being previewed in the editor, then the Filament tenant. The kit's CurrentStore class shows the pattern if you build your own multi-store app.

Keeping them current ​

The kits pin FilamentCraft with a caret constraint. After composer update, run php artisan filamentcraft:upgrade to publish new migrations and assets, and php artisan filamentcraft:doctor to check the result. Each kit's composer test runs Pint, PHPStan at level 6 and its Pest suite.