Découverte Laravel Jetstream

logo laravel jetstream

Introduction


Laravel est un framework PHP innovant et nouvelle génération qui offre une base solide pour la création de vos applications web ou backend, que vous utilisiez VueJS ou ReactJS. De plus, grâce à sa vaste gamme de modules, vous pouvez enrichir votre application avec divers modules robustes tels que Jetstream, Cashier, Inercia, Socialite, Sanctum, et bien d’autres encore.

Voir les Autre Package.

Dans un précédent article, nous avons vu comment créer une base Laravel à l’aide de Larave Breeze, un kit de démarrage.

Aujourd’hui, nous allons explorer comment élever votre système d’authentification à un niveau supérieur avec Laravel Jetstream.

Laravel Jetstream vous offre un point de départ complet pour la gestion des utilisateurs, en s’appuyant sur de nombreux autres packages, notamment Fortifier. Il s’intègre parfaitement avec TailwindCSS et vous permet de choisir entre deux méthodes d’échafaudages : Livewire (PHP, Blade) ou Inertia (VueJS).

Fonctionnalité:

  • Login/Register
  • Authentification a deux facteur
  • Email de vérification
  • Gestion des Session
  • API via Sanctum
  • Additionnelle Teams

Installation



Dans ce tutoriel d’installation, nous supposerons que Composer, Apache et PHP sont déjà installés. Cependant, voici quand même une liste des prérequis nécessaires.

Installation Laravel

Prérequis :

  • php >= 8.1
  • nodejs
  • composer 2
  • apache2

Une fois PHP et Composer installés, il ne vous reste plus qu’à importer le Framework.

composer create-project laravel/laravel example-app

Il ne nous reste plus qu’à configurer le fichier .env. Pour commencer, créez le fichier .env en utilisant la commande « cp ».

cp .env.example .env

Maintenant, générons la clé d’application. Veuillez noter qu’en environnement de production, il est essentiel de la sauvegarder séparément en cas de réinstallation.

php artisan key:generate

Il ne vous reste plus cas configurer les diverse variable selon vos besoin.

APP_NAME=Laravel
APP_ENV=local
APP_KEY= // la clée génére a l'aide de php artisan key-generate
APP_DEBUG=true
APP_URL=http://localhost

LOG_CHANNEL=stack
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=laravel_user
DB_PASSWORD=

BROADCAST_DRIVER=log
CACHE_DRIVER=file
FILESYSTEM_DISK=local
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120

MEMCACHED_HOST=127.0.0.1

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_MAILER=smtp
MAIL_HOST=mailpit
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false

PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_HOST=
PUSHER_PORT=443
PUSHER_SCHEME=https
PUSHER_APP_CLUSTER=mt1

VITE_APP_NAME="${APP_NAME}"
VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
VITE_PUSHER_HOST="${PUSHER_HOST}"
VITE_PUSHER_PORT="${PUSHER_PORT}"
VITE_PUSHER_SCHEME="${PUSHER_SCHEME}"
VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

Installation Jetstream

logo laravel jetstream

Il ne vous reste plus qu’à faire votre choix entre Livewire et Inertia.

Le choix est très simple : interrogez-vous sur la technologie front-end que vous souhaitez utiliser. Si vous êtes familier avec PHP et que vous connaissez Blade, Livewire répondra à vos besoins. Si vous préférez ReactJS ou VueJS, Inertia sera la solution appropriée pour vous.

Commençons l’installation Jetstream

composer require laravel/jetstream

Une fois Jetstream installé, il ne vous reste plus qu’à l’initialiser.

Install Jetstream avec Livewire

php artisan jetstream:install livewire

Si vous souhaitez installer Jetstream avec le système d’équipe, utilisez cette commande :

php artisan jetstream:install livewire --teams

Installer Jetstream avec Inertia

php artisan jetstream:install inertia

Maintenant, il ne nous reste plus qu’à finaliser l’installation avec les commandes suivantes :

php artisan jetstream:install inertia --teams

Maintenant, il ne nous reste plus qu’à finaliser l’installation avec les commandes suivantes :

npm install
npm run build
php artisan migrate

Interface Jetstream

Ci-dessous vous pourrez découvrir un ensemble de screen des interfaces web pré-fournie par jetstream. Si vous souhaitez tout voir ou vous renseignez sur le fonctionnement de chaque, je vous laisse la documentation :

Documention Jetstream

Conclusion

En résumé, Laravel Jetstream se révèle être une ressource inestimable, offrant une solide base pour l’authentification, que ce soit pour une API ou la gestion des utilisateurs. Cette boîte à outils permet de se focaliser sur le développement de l’application, sans se préoccuper de la sécurité des comptes. Il suffit de construire son API et de gérer les utilisateurs. Cependant, pour apporter des modifications à cette base, une certaine expertise est nécessaire pour exploiter pleinement toutes les fonctionnalités de l’outil. Il est donc essentiel de choisir l’outil qui correspond le mieux à vos besoins. Pour ma part, j’utilise régulièrement Laravel en conjonction avec Jetstream et Livewire, et je trouve ces outils extrêmement bénéfiques. Je les recommande vivement.

,