Keelstart is a Laravel 12 and Filament 4 starter kit for building your own SaaS, made by DEV3 Technologies. It is the part every subscription product needs before its first feature: teams and invitations, roles, plans, trials, subscriptions, proration, coupons, seats, usage limits, invoices, an operator admin panel, a customer app panel, an API with team tokens, outgoing webhooks, a public site with pricing and docs, and a working example module you can copy or delete. You build your product on top. The cores are plain code in your repository under packages/keelstart, not a hidden dependency.
No live demo: grouped screenshots and two video tours show the public site, the customer app, the operator panel and the docs. Install it with the demo data to try every role on your own server. This is a web application with a REST API: there are no mobile apps.
For your customers (the team panel)
- Teams and roles: one account can belong to several teams. Owner, admin, member and billing roles, a role matrix page, invitations with expiry (the token is stored hashed and must match the invited email), a last-owner rule and a seat check before anyone is invited.
- Billing page: plan cards with a monthly and yearly toggle, usage meters, invoices with PDF download, cancel and resume, and a proration preview that shows the credit for unused time and the charge for the rest before anything is paid.
- Metered limits: a count limit (projects) and a monthly metered limit (tasks) with warnings at 80 and 100 percent, a soft block with an upgrade prompt, and an atomic counter that does not overshoot under parallel requests.
- Developers: team API tokens whose abilities are capped by the owner's current role, signed outgoing webhooks with delivery history, retries and resend, an audit log and an OpenAPI document.
For you (the operator panel)
- Tenants, users, subscriptions, plans, invoices, coupons, feature flags with per-team overrides, announcements, a changelog, contact messages and payments.
- A dashboard with MRR, ARR, active tenants, trials and churn, an MRR chart and a plan mix chart.
- Impersonation with a required reason, a 30 minute limit, view-only by default and a log of every session. Staff accounts cannot be impersonated.
Billing that adds up
Proration by seconds in UTC, tax per invoice line, integer money with half-up rounding, coupons (percent or fixed, once, repeating or forever), purchasable seats, dunning with retries on days 1, 3 and 5 and a seven day grace period, and checkout that is safe to repeat: eight parallel checkouts with one key give one payment. Payments are simulated until you add your own gateway keys; Stripe and Razorpay adapters are included.
The public site and docs
A landing page, a pricing page read from your plans table, a sign-up with a magic link, a changelog, legal pages, a contact form with a honeypot and rate limit, and a docs section with 38 guides, a table of contents and search. A second layout, a demo SaaS landing for the example module, shows what your own product page can look like.
Build your product on it
- Module generator:
php artisan make:keelstart-module Quotes --tenant --api --panel --fields=... creates the model, migration, policy, Filament resource, API controller, ability and tests for a new tenant-scoped feature. keelstart:remove-example deletes the example module cleanly.
- Tenancy rules are enforced and tested: a test walks every tenant model and every panel URL for cross-team access.
- Races are tested on MySQL: 13 race groups run real parallel HTTP calls and artisan processes against the database (double checkout, one invitation accepted six times, metered usage at the limit, a payment completed six times).
What you get
The complete Laravel application, the web installer, a prebuilt asset bundle (Node.js is not needed to run it), Documentation/index.html, START-HERE.txt and LICENSE.txt. Demo data covers 40 teams, 260 users, about 300 invoices over 18 months, 1,198 projects, 18,000 tasks, 300 webhook deliveries and 1,500 audit entries. Support is included for 6 months.
Good to know
- A starting codebase, not a finished niche app. You add your own product features, brand and legal text.
- Card payments are simulated until you add gateway keys. On a real gateway an upgrade or a seat purchase sends the customer to checkout and applies when the payment succeeds. Charging a stored card on renewal is yours to add; a clearly marked place for it is in the code and documented.
- Notifications are mail only: there is no in-app push channel in version 1.
- Web only. There is no front-end variant for Inertia or Vue in this release.
- Licence: the Regular licence covers one end product for you or one client. If you sell your SaaS to paying customers you need the Extended licence.
- Name: Keelstart is a working name checked by a web search only, not a trademark clearance. All teams, people and data in the screenshots are fictional.
- Use MySQL or MariaDB for a live site, and one cron entry every minute.
Quality checks
Keelstart 1.0.0 passed the seven checks of the DEV3 Laravel suite on the final code: composer validation, syntax, code style and Larastan level 6 (0 errors), 369 tests (Pest), a production build with 21 KB of gzipped JavaScript and CSS on the public pages, seeding of the empty and demo data on MySQL and SQLite, a headless browser run with 40 pages, 20 happy paths and the 13 race groups, an install test from the packaged zip and a secret scan.