Our Laravel SaaS backend with a Livewire 4 frontend. Pages are class-based Livewire components with Blade views, the UI uses Flux UI (free edition) behind shared x-common components, and forms are validated with Laravel Form Requests.
Features
Every backend feature comes with a finished Livewire UI: pages, dialogs, forms and toasts.
Login, registration, password reset, email verification, two-factor auth, passkeys and profile & security settings. You switch each one on or off per domain.
Each tenant gets its own database and subdomain. You create and edit tenants from a list with stats, track workspace status and invite each tenant's admin.
Give each tenant a primary domain and as many secondary ones as you need. Every domain has its own app name, default language and sign-in options.
Put every tenant workspace into maintenance with your own message, a secret bypass link and allowed IPs. You can also suspend a single workspace, which blocks it.
Manage users with search and stats, give them a role and extra permissions, and invite them by email with a signed link.
Spatie roles and permissions with protected system roles, separate permission config files for the central and tenant apps, and menus that respect them.
Menus live in the database and you reorder them by drag & drop. Pick a sidebar or header layout, a sidebar style, a sign-in layout and light or dark mode.
17 languages. Each user picks their own, each domain has a default, and validation messages are translated and shared with the frontend.
Pest feature tests, Larastan, Pint, ESLint and Prettier are set up, along with Laravel Boost guidelines and skills for AI coding agents.
Conventions
The Livewire kit sticks to the usual Livewire conventions, and Larastan checks the types.
resources/views/pages/tenants/index.blade.phpModules/Tenant/Livewire/Index.phpresources/views/components/common/*.blade.phpTranslations in a component
{{ __('modules/tenant.index.title') }}Named routes in Blade
<a href="{{ route('tenants.index') }}" wire:navigate>Framework-specific implementation
The Livewire kit keeps everything in PHP and Blade: a Livewire class per page or modal, Form Requests for validation and services for the business logic.
A page in Livewire
public function save(RoleService $roleService): void
{
$validated = $this->validateFormRequest(RoleRequest::class, ['name' => $this->name]);
$roleService->createRole($validated);
Flux::toast(variant: 'success', text: __('modules/role.toasts.created'));
}See the complete Livewire implementation guide, including pages, layouts and daily development.
Shared backend
The Livewire kit has the same modules, services, tenancy, authentication and permissions as the other kits. Livewire components replace the Inertia controllers, and Form Requests replace laravel-data.
See how Laravel multi-tenancy works in every kit: a database per tenant with stancl/tenancy, identified by subdomain.
The Livewire Starter Kit is $49, paid once, or get all four kits for $139. You keep access for life and get weekly updates.
One-time payment · Lifetime access · Weekly updates included · No recurring subscription