
Key features include:
- Pre-configured User architecture (Model, Policy, Factory, Migration, and Seeder)
- Authorization using Spatie Permission library (roles and permissions)
- Laravel 12
- Livewire 3
- TailwindCSS 4
- AlpineJS
- Spatie Permission
- Spatie Media Library
- Laravel Debugbar
- Pest
- Peck
- Larastan
Model::shouldBeStrict();
:- Prevent lazy loading
- Prevent silently discarding attributes
- Prevent accessing missing attributes
- Force HTTPs (
URL::forceHttps(app()->isProduction())
) - Prohibit destructive database commands (
DB::prohibitDestructiveCommands(app()->isProduction())
)
- Permission and role seeders
- User seeder
While TailwindCSS and Alpine.js are included for styling and frontend interactivity, the starter kit doesn't include a pre-built UI component library (like Tailwind UI, Livewire Flux, DaisyUI, or Flowbite). This gives you the freedom to choose and integrate the component library that best fits your project's design requirements.
composer create-project tapp/laravel-starter-kit <your-project-name-here>
Install dependencies
npm install
npm run build
Setup the environment
In the .env
file, update the database name and other env vars according to your needs:
# in the .env file, configure your database:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE="tapp_starter"
DB_USERNAME=root
DB_PASSWORD=
# Testing
DB_TEST_CONNECTION="mysql-test"
DB_TEST_HOST=127.0.0.1
DB_TEST_PORT=3306
DB_TEST_DATABASE="tapp_starter_test"
DB_TEST_USERNAME=root
DB_TEST_PASSWORD=
Run database migrations
php artisan migrate --seed
This will create an admin user:
user: admin@dev.com
password: secret
and also an "Administrator" role and user permissions.
Thank you for considering contributing to the Tapp Laravel Starter Kit!
If you discover a security vulnerability, please send an e-mail to Steve Williamson via steve@tappnetwork.com. All security vulnerabilities will be promptly addressed.
The Tapp Laravel SasS Starter Kit software is licensed under the MIT license.