- What Laravel versions does Jetstream support, and how do I check compatibility?
- Jetstream officially supports Laravel 11.x, 12.x, and 13.x. Verify compatibility by checking the [Jetstream GitHub](https://github.com/laravel/jetstream) for version tags and Laravel’s [release notes](https://laravel.com/docs/releases). Always pin versions in `composer.json` to avoid conflicts. PHP 8.4+ is required for Jetstream v5.4.0+.
- Can I use Jetstream for a simple Laravel app that only needs basic authentication?
- Jetstream is overkill for basic auth—it includes teams, 2FA, and API features. For lightweight needs, consider Laravel Breeze or Fortify instead. Jetstream’s value shines in projects requiring teams, profiles, or API tokens. Audit your MVP scope before adopting.
- How do I install Jetstream with Livewire vs. Inertia.js?
- Run `composer require laravel/jetstream` and choose Livewire (`livewire`) or Inertia (`inertia`) during installation. Livewire uses Blade templates, while Inertia.js renders Vue/React components. Both stacks require Tailwind CSS. Follow the [official docs](https://jetstream.laravel.com/installation.html) for stack-specific setup.
- Will Jetstream’s migrations conflict with my existing user table?
- Jetstream’s migrations include `users`, `teams`, `team_user`, and `sessions` tables. If your project already has a custom `users` table (e.g., extra columns), you’ll need to merge schemas manually or use `--ignore-platform-reqs` during installation. Always back up your database before running migrations.
- Does Jetstream support API authentication (e.g., Sanctum or Passport)?
- Yes, Jetstream includes optional API support via Laravel Sanctum (for SPAs) or Passport (for OAuth2). Enable it during installation with the `--api` flag. API endpoints for login, registration, and tokens are preconfigured. Use Sanctum for simplicity or Passport for advanced OAuth needs.
- How customizable is Jetstream’s UI? Can I replace Tailwind CSS?
- Jetstream’s UI is built with Tailwind CSS and is highly customizable via Tailwind’s config files. Override Blade/Livewire/Inertia views in `resources/views` or modify Tailwind’s `config/tailwind.js`. Replacing Tailwind entirely requires rebuilding the frontend from scratch, which is not recommended for Jetstream’s workflows.
- What’s the best way to test Jetstream in a staging environment?
- Use Laravel’s `php artisan test` with Pest or PHPUnit to test auth flows (login, registration, 2FA). Mock Jetstream’s database interactions and test edge cases like email verification failures. For frontend testing, use Inertia/Livewire’s built-in testing helpers. Document test cases for customizations.
- Can I disable teams or 2FA features in Jetstream?
- Yes, Jetstream’s features are modular. Disable teams by removing the `--teams` flag during installation or manually deleting team-related migrations/views. For 2FA, exclude the `two-factor-authentication` feature flag. Audit the `config/jetstream.php` file for feature toggles and remove unused middleware or routes.
- How does Jetstream handle email verification in production?
- Jetstream uses Laravel’s mail drivers (e.g., SMTP, Mailgun) for email verification. Configure `.env` with your email service credentials and set `MAIL_DRIVER=mailgun` (or equivalent). For production, use queue-based email sending (`MAIL_MAILER=queue`) to avoid delays. Test email delivery with `php artisan queue:work`.
- What are the alternatives to Jetstream for Laravel authentication?
- For lightweight auth, use Laravel Breeze (minimalist) or Fortify (API-focused). For teams, consider Laravel Nova (admin panel) or custom packages like Spatie’s Laravel-Permission. Jetstream stands out for its polished UI, 2FA, and API support, but Breeze is faster for simple projects. Evaluate your needs: teams, 2FA, or API tokens drive Jetstream’s value.