کیت استارتر لاراول (احراز هویت) – Laravel Starter Kits

لاراول در ورژن ۸ خودش صفحه ای رو به اسم کیت استارتر (Starter kits) به داکیومنت خودش اضافه کرده. این صفحه مربوط به سیستم احراز هویت هستش که میخوایم با هم بررسی کنیم ببینیم چی هست و چه ویژگی هایی داره.

سیستم احراز هویت لاراول ۸

لاراول سیستم احراز هویت خودش رو جدا کرده و دیگه داخل لاراولی که نصب میکنین خبری از سیستم auth دیفالتی که با Artisan نصب می‌کردین نیست. (ولی همون سیستم قدیمی رو داخل پکیج Laravel UI قرار داده که می‌تونین طبق آموزش نصب Laravel UI (احراز هویت قدیمی لاراول) نصب و استفاده کنین)

لاراول پکیج هایی رو برای استفاده از سیستم احراز هویت آماده در این صفحه معرفی میکنه. به هرکدوم از این پکیج ها به اصلاح کیت شروع کننده (Starter kits) میگه. این کیت ها به طور خودکار روت ها، کنترلرها و ویو های مربوط به سیستم ورود، ثبت نام و هر چیزی که مربوط به احراز هویت میشه رو سازماندهی و نصب میکنه. نصب و استفاده از این پکیج ها ضروری نیست. می‌تونید اون هارو نادیده بگیرین و سیستم احراز هویت خودتون رو پیاده سازی کنین.

 

نسیم لاراول – Laravel Breeze

این پکیج حداقل موارد احراز هویت از جمله سیستم ورود، ثبت نام، فراموشی رمز عبور، تأیید ایمیل و تأیید رمز عبور رو داخل خودش داره. صفحات ویو (view) این پکیج از blade لاراول درست شده و برای استایل از Tailwind CSS استفاده شده. Breeze میتونه یک نقطه شروع فوق العاده برای راه اندازی لاراول باشه.

 

آموزش نصب Laravel Breeze

اول از همه باید یک لاراول جدید ایجاد کنین. بعد پایگاه داده خودتون رو پیکربندی کنین و مایگریشن رو اجرا کنید تا دیتابیس هاتون ساخته بشه:

curl -s https://laravel.build/example-app | bash

cd example-app

php artisan migrate

بعد از نصب لاراول جدید، می‌تونید Laravel Breeze رو با استفاده از کامپوزر (Composer) نصب کنین:

composer require laravel/breeze --dev

بعد از نصب شدن پکیج توسط کامپوزر، شما باید با استفاده از دستور breeze:install توسط Artisan، اون رو نصب کنین. این دستور همه‌ی صفحات، روت ها، کنترلر ها و… رو بصورت کامل نصب و منتشر میکنه. Laravel Breeze تمام کدهای خودش رو در برنامه‌ی شما منتشر می‌کنه تا بتونه کنترل و دید کافی روی نحوه‌ی اجرای سیستم احراز هویت خودش داشته باشه. بعد از نصب Breeze نیازه که یک بار assets ها رو کامپایل کنین تا فایل های CSS برنامه آپدیت بشن و یک بار مایگریشن ها رو اجرا کنین تا جداول جدید ساخته بشن:

php artisan breeze:install

npm install

npm run dev

php artisan migrate

خب حالا میتونین از طریق آدرس های /login یا /register از طریق مرورگر تست کنین که همه چیز درست باشه. لیست تمام مسیر های سیستم احراز هویت داخل مسیر routes/auth.php موجود هستش.

 

ترکیب Breeze و Inertia

Laravel Breeze امکان ترکیب شدن با Inertia.js رو هم داره که توسط Vue طراحی شده. برای استفاده از این ویژگی باید موقع نصب Breeze از فلگ --inertia  استفاده کنین. یعنی مراحل نصبتون مثل زیر میشه:

php artisan breeze:install --inertia

npm install

npm run dev

php artisan migrate

 breeze login

 

جت استریم لاراول – Laravel Jetstream

در حالی که Laravel Breeze یه نقطه شروع ساده رو برای راه اندازی سیستم احراز هویت در لاراول فراهم می‌کنه، جت استریم (Jetstream) این قابلیت رو با ویژگی‌های قوی‌تر و تکنولوژی فرانت بهتر ارائه میده. این پکیج برای کسایی که تازه با لاراول آشنا شدن توصیه نمیشه و پیشنهاد میشه که فعلا با Laravel Breeze کار کنن تا کامل با چالش های مبحث احراز هویت لاراول دست و پنجه نرم کنن.

Jetstream یه چارچوب زیبا از طراحی برنامه برای لاراول فراهم میکنه و شامل امکاناتی مثل سیستم ورود، ثبت نام، تأیید ایمیل، احراز هویت دو مرحله‌ای ، مدیریت سشن ، پشتیبانی API از طریق Laravel Sanctum و مدیریت اختیاری تیم هستش. Jetstream هم با استفاده از Tailwind CSS طراحی شده و برای فرانت می‌تونین از Livewire یا Inertia.js استفاده کنین.

 

آموزش نصب Laravel Jetstream

بعد از نصب لاراول جدید، جت استریم رو میتونید از طریق کامپوزر به شکل زیر نصب کنین:

composer require laravel/jetstream

بعد از نصب پکیج Jetstream ، باید اون رو اجرا کنین. برای اجرا کردن اون باید از دستور jetstream:install در Artisan استفاده کنین. توی این دستور باید مشخص کنین که میخوایین از livewire استفاده کنین یا inertia. علاوه بر این، برای فعال کردن پشتیبانی تیم می‌تونین از فلگ --teams استفاده کنین (این ویژگی یه بخش اضافی برای سیستم کاربری اضافه می‌کنه که میشه کاربر رو تیم بندی کرد).

نکته : Jetstream فقط باید روی لاراولی که تاره نصب شده، نصب بشه. تلاش برای نصب Jetstream روی برنامه هایی که از قبل دارین ممکنه باعث بروز مشکلات و ارورهای غیرمنتظره بشه.

# Install Jetstream With Livewire
php artisan jetstream:install livewire
# Or
php artisan jetstream:install livewire --teams


# Or, Install Jetstream With Inertia
php artisan jetstream:install inertia
# Or
php artisan jetstream:install inertia --teams

بعد از نصب Jetstream هم نیازه که یک بار assets ها رو کامپایل کنین و یک بار مایگریشن ها رو اجرا کنین تا جداول جدید ساخته بشن:

npm install

npm run dev

php artisan migrate

 jetstream login

اگه از Livewire استفاده می‌کنین، باید فایل های Blade رو از Livewire منتشر یا پابلیش کنین:

php artisan vendor:publish --tag=jetstream-views

خب حالا میتونین شخصی سازی خودتون رو شروع کنین. مثلا برای تغییر لوگو پیشفرض صفحه ورود میتونین از مسیر های زیر اقدام کنین:

# Livewire
resources/views/vendor/jetstream/components/application-logo.blade.php
resources/views/vendor/jetstream/components/authentication-card-logo.blade.php
resources/views/vendor/jetstream/components/application-mark.blade.php

# Inertia 
resources/js/Jetstream/AuthenticationCardLogo.vue
resources/js/Jetstream/ApplicationLogo.vue
resources/js/Jetstream/ApplicationMark.vue

بعد از شخصی سازی کامپوننت ها یادتون باشه که مجدد assets هارو کامپایل کنین:

npm run dev

 

امیدوارم این مقاله مورد پسندتون بوده باشه و منتظر نظراتتون هستم.

 

 

مطالب مرتبط پیشنهادی
4 نظرات
  1. محسن :

    بابت این مقاله مفید ، ممنونم

    1. علی رحیمی :

      خواهش میکنم

  2. Amin :

    عالی بود من کمتر نظر میزارم ولی این محتوا نظرمو واقعا جلب کرد ، لطفا یه خبرنامه تو سایتتون با فیدبرنر گوگلی یا مورد دیگری راه بندازین استفاده کنیم از مطالب جدید سایت.

    1. علی رحیمی :

      ممنون از شما دوست عزیز، نظر لطفتونه
      چشم، حتما در آینده فکری براش میکنم

نظر خود را ارسال کنید

آدرس ایمیل شما منتشر نخواهد شد.