laravel/jetstream
Laravel Jetstream is a starter kit for Laravel 11.x and earlier, providing a ready-made application foundation with common auth and account features. For newer starter kits, see https://laravel.com/starter-kits.
Laravel Jetstream is a highly modular, opinionated starter kit designed for Laravel applications requiring authentication, user profiles, teams (optional), and API support. It leverages:
Fit for:
Misalignment:
| Factor | Feasibility | Notes |
|---|---|---|
| Laravel Version | High | Supports Laravel 11.x, 12.x, 13.x (v5.x). Check compatibility matrix. |
| PHP Version | High | PHP 8.4+ (v5.x). PHP 8.5+ recommended for future-proofing. |
| Frontend Stack | Medium-High | Inertia.js + Vue 3 (default). Livewire fallback. Requires Vite/NPM. |
| Database | High | MySQL, PostgreSQL, SQLite (standard Laravel support). |
| Existing Auth System | Low-Medium | Overwrites Laravel’s default auth scaffolding. Backup critical files. |
| API Requirements | High | Sanctum included by default (optional during install). |
| Team Features | High | Optional but tightly integrated (teams, invitations, roles). |
Key Integration Steps:
composer require laravel/jetstream
php artisan jetstream:install livewire --teams # or inertia
php artisan migrate
npm install && npm run dev
php artisan vendor:publish --tag=jetstream-assets
auth, profile, teams).auth middleware to web group.Potential Conflicts:
AuthController, RegisterController, etc.| Risk Area | Severity | Mitigation |
|---|---|---|
| Version Skew | High | Test with Laravel 13.x + PHP 8.5 to avoid compatibility gaps. |
| Frontend Build Issues | Medium | Ensure Node.js 20.x, Vite 5.x, and NPM/Yarn are compatible. |
| Database Migrations | Medium | Backup existing users, password_resets, and custom auth tables. |
| Livewire/Inertia Learning Curve | Medium | Allocate time for team upskilling on Livewire properties/events or Inertia page props. |
| Team Feature Bloat | Low-Medium | Disable teams via --no-teams if unused (reduces ~30% of Jetstream code). |
| API Security | Medium | Audit Sanctum’s HasApiTokens trait for custom token logic. |
| Customization Limits | Medium | Jetstream’s blade stubs and Livewire components are extensible but not always pluggable. |
Critical Questions for TPM:
--no-teams reduces complexity.)Jetstream is optimized for the following stack:
Non-Fit Stacks:
User model is tightly coupled.composer create-project laravel/laravel my-app
cd my-app
composer require laravel/jetstream
php artisan jetstream:install inertia --teams # or livewire
.env (app URL, mail settings).php artisan migrate.npm install && npm run dev
app/Http/Livewire/Profile/UpdateProfileInformation.php).resources/views/vendor/jetstream/.app/Http/Controllers/Auth/, app/Models/User.php, and database migrations.composer require laravel/jetstream
php artisan jetstream:install livewire --teams
AuthController, RegisterController with Jetstream’s (or extend them).User model to extend Jetstream\User.php artisan migrate (Jetstream adds teams, team_user, etc.).User::factory()->create().resources/views/vendor/jetstream/ for overrides.// app/Providers/AuthServiceProvider.php
public function boot()
{
$this->registerPolicies();
Jetstream::boot(); // Load Jetstream auth
// Custom policies here
}
| Component | Compatibility | Notes |
|---|---|---|
| Laravel 13.x | ✅ Full | Tested in v5.5.0+. |
| PHP 8.5 | ✅ Full | PHP 8.4+ supported; 8.5+ recommended. |
| Inertia.js 2.x | ✅ Full | Default in v5.x. |
| Livewire 3.x | ✅ Full | Fallback for non-Inertia setups. |
| Tailwind CSS 3.x | ✅ Full | Required for styling. |
| Sanctum API | ✅ Full | Optional during install. |
| Teams Feature | ✅ Full | Optional but tightly integrated. |
| 2FA (Recovery Codes) | ✅ Full | Uses Laravel’s TwoFactorAuthenticatable. |
| Custom User Model | ⚠️ Partial | Ext |
How can I help you explore Laravel packages today?