Тема
Стартовые киты и каркасы
Auth-скаффолдинг (first-party, бесплатно)
| Кит | Что даёт | Когда |
|---|---|---|
| laravel/breeze | Логин/регистрация/сброс пароля; Blade, Livewire или Inertia (Vue/React) | Дефолт для большинства проектов |
| laravel/jetstream | Breeze + команды (teams), 2FA, сессии, API-токены (Sanctum) | Когда нужны команды/2FA из коробки |
| laravel/fortify | Headless-бэкенд аутентификации без UI | Свой фронт (SPA, свой дизайн форм) |
| laravel/sanctum | API-токены + SPA-аутентификация | Любой API |
| laravel/socialite (+ socialiteproviders/*) | OAuth: Google, GitHub… + сообщество: VK, Yandex, Telegram | Соцвход; RU-провайдеры — через socialiteproviders.com |
Примечание: официальные starter kits переехали в формат отдельных репозиториев-шаблонов (Blade/Livewire/React/Vue) — при старте нового проекта смотреть актуальный laravel new.
SaaS-каркасы
| Кит | Статус | Цена | Что даёт |
|---|---|---|---|
| Wave — thedevdojo/wave | 🟢 | Бесплатно (MIT) | Полный SaaS-каркас: подписки/биллинг, роли, API, профили, блог, админка на Filament, темы. Биллинг — Stripe/Paddle (для РФ переписывать на ЮKassa) |
| Laravel Spark | — | Платный | Официальный биллинг-каркас; Wave закрывает то же бесплатно |
| SaaSykit, LaraFast и пр. | — | Платные | Бойлерплейты $99–299; смотреть только если Wave не хватает |
Wave — главная находка для SaaS-идей студии: развернуть, выкинуть Stripe, прикрутить ЮKassa-подписки, оставить роли/планы/лимиты/админку.
Мультитенантность
| Пакет | Подход | Когда |
|---|---|---|
| stancl/tenancy | Автоматика: тенант = своя БД/схема + автоподмена коннекта, кешей, очередей, файлов | «Один инстанс — много клиентов с изоляцией данных»; самый популярный |
| spatie/laravel-multitenancy | Минималистичный: ты сам решаешь, что переключать | Когда нужна прозрачность и меньше магии |
| Один tenant_id столбец + global scope | Ручной | Малые SaaS: часто достаточно и дешевле в поддержке |
Правило: начинать с tenant_id + scope; переезжать на stancl/tenancy, когда появится требование физической изоляции (перс. данные, «наша БД отдельно»).
Скелет студийного стартера (рекомендация)
Вместо чужого бойлерплейта — собрать свой starter-репозиторий из уже используемого:
laravel new + breeze (blade)
+ filament (панель /admin)
+ spatie: permission, medialibrary, sitemap, honeypot, activitylog, backup
+ laravel-lang/common (русская валидация)
+ pint + larastan + pest (качество)
+ docker-compose из текущего шаблона студии (app/nginx/postgres/redis/queue/scheduler)
+ типовые Filament-ресурсы: Pages, SeoBlocks, Forms/Leads, Settings
+ trustProxies под Caddy (уже отработано в PORTS/proxy)Один день на оформление — и каждый новый корпсайт начинается с 60–70% готовности. Это дешевле адаптации любого чужого кита, потому что все конвенции — уже студийные (см. CLAUDE.md и specs/).