Convert Figma logo to code with AI

laravel logojetstream

Tailwind scaffolding for the Laravel framework.

3,948
808
3,948
2

Top Related Projects

2,768

Minimal Laravel authentication scaffolding with Blade, Vue, or React + Tailwind.

22,155

A full-stack framework for Laravel that takes the pain out of building dynamic UIs.

6,204

Inertia.js lets you quickly build modern single-page React, Vue and Svelte apps using classic server-side routing and controllers.

2,514

Laravel UI utilities and presets.

1,599

Backend controllers and scaffolding for Laravel authentication.

Associate users with roles and permissions

Quick Overview

Laravel Jetstream is an application starter kit for Laravel that provides a robust starting point for your application. It offers authentication, team management, API support, and other essential features out of the box, allowing developers to quickly bootstrap new Laravel projects with a modern, well-structured foundation.

Pros

  • Rapid application development with pre-built authentication and team management features
  • Seamless integration with Laravel ecosystem and best practices
  • Flexible frontend stack options (Livewire or Inertia.js)
  • Built-in API support with Laravel Sanctum

Cons

  • May be overkill for simple projects or those with specific requirements
  • Learning curve for developers new to Livewire or Inertia.js
  • Limited customization options without significant modifications
  • Potential performance overhead due to included features

Code Examples

  1. Creating a new Jetstream project with Livewire:
laravel new project-name --jet
  1. Customizing Jetstream's login view:
use Laravel\Fortify\Fortify;

Fortify::loginView(function () {
    return view('auth.custom-login');
});
  1. Adding a custom action to the user profile:
use Laravel\Jetstream\Jetstream;

Jetstream::inertia()->managesProfilePhotos()->profilePhotoDisk('s3');

Getting Started

To get started with Laravel Jetstream, follow these steps:

  1. Install Laravel:
composer global require laravel/installer
  1. Create a new Laravel project with Jetstream:
laravel new project-name --jet
  1. Choose your stack (Livewire or Inertia) when prompted.

  2. Set up your database in the .env file.

  3. Run migrations:

php artisan migrate
  1. Start the development server:
php artisan serve

Your Jetstream-powered Laravel application is now ready for development!

Competitor Comparisons

2,768

Minimal Laravel authentication scaffolding with Blade, Vue, or React + Tailwind.

Pros of Breeze

  • Lightweight and minimalistic, offering a simpler starting point
  • Easier to customize and extend due to its basic structure
  • Faster initial setup and learning curve for beginners

Cons of Breeze

  • Lacks advanced features like team management and API support
  • Fewer pre-built components and layouts compared to Jetstream
  • May require more manual work for complex authentication scenarios

Code Comparison

Breeze (routes/auth.php):

Route::middleware('guest')->group(function () {
    Route::get('register', [RegisteredUserController::class, 'create'])
                ->name('register');
    Route::post('register', [RegisteredUserController::class, 'store']);
});

Jetstream (config/jetstream.php):

'features' => [
    Features::profilePhotos(),
    Features::api(),
    Features::teams(['invitations' => true]),
    Features::accountDeletion(),
],

Breeze focuses on simple, straightforward authentication routes, while Jetstream offers a more feature-rich configuration with options for advanced functionality like team management and API support.

Breeze is ideal for developers who want a clean slate to build upon, whereas Jetstream provides a more comprehensive starting point with additional features out of the box. The choice between the two depends on the project's complexity and the developer's preference for customization versus pre-built functionality.

22,155

A full-stack framework for Laravel that takes the pain out of building dynamic UIs.

Pros of Livewire

  • Lightweight and focused solely on building dynamic interfaces
  • More flexible and can be integrated into existing Laravel projects easily
  • Steeper learning curve but offers more granular control over components

Cons of Livewire

  • Lacks built-in authentication and team management features
  • Requires more manual setup for common application features
  • May require additional packages for advanced functionality

Code Comparison

Livewire component:

class Counter extends Component
{
    public $count = 0;

    public function increment()
    {
        $this->count++;
    }
}

Jetstream Inertia component:

class TeamController extends Controller
{
    public function store(Request $request)
    {
        $request->user()->ownedTeams()->create($request->validate([
            'name' => ['required', 'string', 'max:255'],
        ]));

        return redirect(config('fortify.home'));
    }
}

Jetstream provides a more comprehensive starter kit with authentication, team management, and API features out of the box. Livewire, on the other hand, focuses on creating dynamic interfaces and can be more easily integrated into existing projects. The choice between the two depends on project requirements and developer preferences.

6,204

Inertia.js lets you quickly build modern single-page React, Vue and Svelte apps using classic server-side routing and controllers.

Pros of Inertia

  • More flexible and framework-agnostic, allowing use with various backend frameworks
  • Simpler learning curve for developers already familiar with traditional server-side rendering
  • Easier to integrate into existing projects without a complete overhaul

Cons of Inertia

  • Less opinionated, requiring more setup and configuration
  • Fewer built-in features compared to Jetstream's comprehensive starter kit
  • May require additional work to implement advanced authentication features

Code Comparison

Inertia (Vue.js component):

<template>
  <layout>
    <h1>{{ title }}</h1>
    <p>{{ content }}</p>
  </layout>
</template>

<script>
export default {
  props: ['title', 'content'],
}
</script>

Jetstream (Livewire component):

class ShowPost extends Component
{
    public $title;
    public $content;

    public function mount($post)
    {
        $this->title = $post->title;
        $this->content = $post->content;
    }

    public function render()
    {
        return view('livewire.show-post');
    }
}

Both Inertia and Jetstream offer modern approaches to building web applications with Laravel. Inertia provides more flexibility and easier integration with existing projects, while Jetstream offers a more comprehensive starter kit with built-in features. The choice between them depends on project requirements and developer preferences.

2,514

Laravel UI utilities and presets.

Pros of UI

  • Lightweight and simple to implement
  • Offers basic authentication scaffolding
  • Flexible and customizable for specific project needs

Cons of UI

  • Limited features compared to Jetstream's comprehensive offering
  • Lacks built-in two-factor authentication and team management
  • Requires more manual setup for advanced features

Code Comparison

UI (basic authentication controller):

public function login(Request $request)
{
    $credentials = $request->only('email', 'password');
    if (Auth::attempt($credentials)) {
        return redirect()->intended('dashboard');
    }
    return back()->withErrors(['email' => 'Invalid credentials']);
}

Jetstream (Fortify authentication service provider):

use Laravel\Fortify\Fortify;

Fortify::authenticateUsing(function (Request $request) {
    $user = User::where('email', $request->email)->first();
    if ($user && Hash::check($request->password, $user->password)) {
        return $user;
    }
});

UI focuses on simplicity and basic functionality, while Jetstream provides a more robust and feature-rich authentication system out of the box. UI is better suited for projects requiring minimal authentication features or custom implementations, whereas Jetstream offers a comprehensive solution for applications needing advanced authentication and team management capabilities.

1,599

Backend controllers and scaffolding for Laravel authentication.

Pros of Fortify

  • Lightweight and flexible authentication backend
  • Can be used with any frontend stack or custom UI
  • Easier to integrate into existing projects

Cons of Fortify

  • Requires more manual setup and configuration
  • Lacks built-in frontend scaffolding
  • No pre-built UI components or layouts

Code Comparison

Fortify (backend-only authentication):

use Laravel\Fortify\Fortify;

Fortify::registerView(function () {
    return view('auth.register');
});

Jetstream (full-stack authentication and UI):

use Laravel\Jetstream\Jetstream;

Jetstream::inertia()
    ->withAuthenticationViews()
    ->register();

Fortify provides a backend-only authentication solution for Laravel applications, offering flexibility and lightweight implementation. It's ideal for developers who want to customize their frontend or use different frontend frameworks. However, it requires more manual setup and doesn't include pre-built UI components.

Jetstream, on the other hand, offers a full-stack authentication solution with pre-built UI components and layouts. It provides a more opinionated and feature-rich approach, including team management and API support out of the box. While Jetstream offers a quicker setup for new projects, it may be less flexible for existing applications or custom frontend requirements.

Choose Fortify for maximum flexibility and control over your authentication implementation, or opt for Jetstream if you prefer a complete, ready-to-use authentication and UI solution.

Associate users with roles and permissions

Pros of Laravel Permission

  • Focused solely on role and permission management, providing a more specialized and lightweight solution
  • Offers granular control over permissions, allowing for complex authorization scenarios
  • Easy integration with existing Laravel projects without requiring a full application scaffold

Cons of Laravel Permission

  • Lacks built-in authentication and user management features
  • Requires more manual setup and configuration compared to Jetstream's out-of-the-box solution
  • Does not provide frontend scaffolding or pre-built UI components

Code Comparison

Laravel Permission:

$user->givePermissionTo('edit articles');
$user->assignRole('writer');
$user->hasPermissionTo('edit articles');

Jetstream:

// Jetstream focuses on authentication and scaffolding
// Role and permission management would typically be implemented separately
// or through additional packages

Laravel Permission provides a more focused approach to role and permission management, offering flexibility and granular control. Jetstream, on the other hand, is a complete application scaffolding package that includes authentication, team management, and other features out of the box. The choice between the two depends on project requirements and the level of control needed over the authorization system.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Logo Laravel Jetstream

Build Status Total Downloads Latest Stable Version License

Introduction

Laravel Jetstream is a beautifully designed application scaffolding for Laravel. Jetstream provides the perfect starting point for your next Laravel application and includes login, registration, email verification, two-factor authentication, session management, API support via Laravel Sanctum, and optional team management.

Jetstream is designed using Tailwind CSS and offers your choice of Livewire or Inertia scaffolding.

Official Documentation

Documentation for Jetstream can be found on the Jetstream website.

Contributing

Thank you for considering contributing to Jetstream! You can read the contribution guide here.

Code of Conduct

In order to ensure that the Laravel community is welcoming to all, please review and abide by the Code of Conduct.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

License

Laravel Jetstream is open-sourced software licensed under the MIT license.