Laravel Jetstream - un nouvel échafaudage pour la charpente

La version Laravel 8 a apporté avec elle un nouveau cadre pour déployer rapidement un système d'authentification des utilisateurs qui comprend la connexion, l'enregistrement, la confirmation par e-mail, l'authentification à deux facteurs, la gestion des sessions et des commandes. Jetstream dispose également d'une intégration Laravel Sanctum intégrée pour l'authentification API basée sur des jetons.



image



Choisir une pile



Laravel Jetstream est livré avec deux piles frontales - Livewire et Inertia.js . Les deux piles ajoutent de la réactivité à votre application, la différence entre elles est que Livewire utilise Blade comme moteur de création de modèles et Inertia.js utilise Vue. Tailwind est utilisé comme framework CSS dans les deux cas.



Installation



Si nous créons un nouveau projet, nous pouvons utiliser l'installateur Laravel avec un indicateur --jet. L'installation sera interactive et vous invitera à sélectionner la pile et à gérer les équipes. Après l'installation, vous devez migrer vers la base de données:

laravel new project-name --jet
php artisan migrate


Ajoutez le package au projet fini à l'aide de Composer:

composer require laravel/jetstream


Ensuite, en fonction de la pile sélectionnée, choisissez l'une des deux. Si la gestion des commandes n'est pas requise, l'indicateur --teamsdoit être supprimé.



Livewire:

php artisan jetstream:install livewire --teams


Inertia.js:

php artisan jetstream:install inertia --teams


Nous terminons l'installation en installant les packages NPM et en migrant la base de données:

npm install && npm run dev
php artisan migrate


Profil de l'utilisateur



Laravel Jetstream permet à l'utilisateur d'accéder à son profil, de mettre à jour ses informations et même de télécharger une photo. Vous pouvez désactiver la possibilité d'installer des photos dansconfig/jetstream.php

image



Authentification à deux facteurs



Après avoir activé l'authentification à deux facteurs, l'utilisateur doit enregistrer les codes de récupération et également scanner le code QR reçu à l'aide de l'application activée par mot de passe à usage unique - un mot de passe dynamique. Cela peut être, par exemple, Google Authenticator ou 1Password.

image



API



Jetstream est intégré à Sanctum et permet à l'utilisateur de générer des jetons d'accès avec différents droits: créer, lire, mettre à jour et supprimer. Vous pouvez désactiver cette fonctionnalité dansconfig/jetstream.php

image



Commandes



Si vous avez installé Jetstream avec l'option teams, vous obtiendrez une interface de gestion des commandes. Chaque utilisateur peut être membre d'une ou plusieurs équipes. Par défaut, un nouvel utilisateur est membre de l'équipe qui porte son nom. Par exemple, pour l'utilisateur John, ce serait l'équipe de John.



L'utilisateur peut renommer cette commande ou en créer d'autres. Vous pouvez inviter d'autres utilisateurs dans votre équipe en connaissant uniquement leur adresse e-mail et ils doivent déjà être inscrits sur le site. Le propriétaire de l'équipe attribue des rôles à d'autres membres. Les rôles peuvent être Administrateur ou Éditeur. L'administrateur a tous les droits lorsque l'éditeur peut uniquement lire, créer et mettre à jour. Autrement dit, il a tous les mêmes droits, sauf pour la suppression.

image



All Articles