شرح مصادقة Laravel 8: كيفية إعداد نظام تسجيل الدخول باستخدام Laravel Breeze

دقائق القراءة: 5

مقدمة إلى إعداد المصادقة في Laravel 8

أصبحت المصادقة جزءاً أساسياً في معظم تطبيقات الويب الحديثة، إذ لا يكاد يخلو أي مشروع من صفحات تسجيل الدخول، وإنشاء الحسابات، واستعادة كلمات المرور، والتحقق من البريد الإلكتروني. المشكلة أن بناء هذه المنظومة يدوياً في كل مشروع يستهلك وقتاً وجهداً كبيرين، وقد يزيد من احتمالات الأخطاء البرمجية.

هنا تبرز قوة Laravel، وخصوصاً عند استخدام الحزمة الرسمية Laravel Breeze التي توفر لك هيكل مصادقة جاهزاً وخفيفاً، بحيث يمكنك التركيز على منطق التطبيق الأساسي بدلاً من إعادة بناء نفس المكونات في كل مرة.

إذا كانت لديك معرفة أساسية بلغة PHP، فسيكون من السهل جداً متابعة هذا الدليل وتطبيق الخطوات على مشروعك.

واجهة توضيحية لمقال إعداد المصادقة في Laravel 8 باستخدام Laravel Breeze

ما هو Laravel Breeze؟

Laravel Breeze هو تنفيذ بسيط وخفيف لجميع ميزات المصادقة الأساسية في Laravel. يوفّر لك بشكل جاهز صفحات ومسارات ووحدات تحكم خاصة بالمهام التالية:

  • تسجيل الدخول.
  • إنشاء حساب جديد.
  • إعادة تعيين كلمة المرور.
  • التحقق من البريد الإلكتروني.
  • تأكيد كلمة المرور عند تنفيذ العمليات الحساسة.

الميزة الأهم أن Laravel Breeze يقوم بإنشاء الملفات اللازمة داخل مشروعك، مثل routes وcontrollers وviews، مما يمنحك حرية كاملة في تعديلها لاحقاً بما يناسب احتياجات التطبيق.

كيف يختلف عن الطرق الأقدم؟

في الإصدارات السابقة من Laravel كانت هناك أدوات أخرى لإنشاء منظومة المصادقة. على سبيل المثال، في Laravel 7 كان بالإمكان استخدام الحزمة laravel/ui، والتي اعتمدت على Bootstrap بدلاً من Tailwind CSS. أما في الإصدارات الأقدم من Laravel 6، فكان الأمر يتم عبر الأمر php artisan make:auth.

لذلك يمكن اعتبار Laravel Breeze الامتداد الأحدث والأخف لتجهيز المصادقة بشكل رسمي ومدروس. كما أنه يختصر وقت التطوير ويقلل الأخطاء، لأن البنية الناتجة مبنية وفق أفضل الممارسات المعتمدة في بيئة Laravel.

المتطلبات قبل البدء

قبل تنفيذ الخطوات، تأكد من توفر الأدوات التالية على جهازك:

  • تثبيت Composer.
  • تثبيت Laravel.
  • توفر بيئة قاعدة بيانات مثل MySQL.
  • وجود Node.js وnpm من أجل بناء الملفات الأمامية.

كيفية تثبيت Laravel Breeze

لبدء استخدام الحزمة داخل مشروعك، نفّذ الأمر التالي:

composer require laravel/breeze --dev

بعد اكتمال التثبيت، شغّل أمر التهيئة التالي لنشر ملفات المصادقة داخل التطبيق:

php artisan breeze:install

هذا الأمر يقوم بإنشاء البنية الأساسية الخاصة بالمصادقة، بما في ذلك الصفحات والمسارات ووحدات التحكم والموارد الأخرى.

ما الذي يضيفه الأمر breeze:install إلى المشروع؟

بعد تنفيذ الأمر ستلاحظ مجموعة من التغييرات المهمة، منها:

  • إنشاء وحدات تحكم auth controllers الخاصة بالتسجيل وتسجيل الدخول وتسجيل الخروج.
  • إضافة صفحات واجهة المستخدم المبنية باستخدام Tailwind CSS.
  • إنشاء صفحة Dashboard لتحويل المستخدم إليها بعد نجاح تسجيل الدخول.
  • تعديل الصفحة الرئيسية لتضم روابط مثل التسجيل والدخول.
  • إضافة ملفات CSS وJavaScript التي تحتاج إلى بناء لاحق.
  • إضافة مسارات مصادقة ضمن ملف routes/auth.php.
  • إدراج اختبارات داخل مجلد tests.

بناء الملفات الثابتة CSS وJavaScript

بعد تثبيت Laravel Breeze، يجب بناء الملفات الأمامية التي تم إنشاؤها داخل مجلد resources. هذه الخطوة مهمة لتحويل الملفات إلى صيغة مناسبة للمتصفح، كما أنها تساعد على تحسين الأداء وتقليل عدد الطلبات عند تحميل الصفحة.

نفّذ الأوامر التالية:

npm install
npm run dev

قد تستغرق هذه العملية بعض الوقت وفقاً لسرعة الإنترنت وإمكانيات الجهاز.

رسالة نجاح بناء ملفات CSS وJavaScript في مشروع Laravel

بعد اكتمال البناء، ستجد داخل مجلد public مجلدات مثل css وjs تحتوي على الملفات الجاهزة للاستخدام داخل التطبيق.

تهيئة قاعدة البيانات وتشغيل الترحيلات Migrations

لكي يتمكن التطبيق من حفظ بيانات المستخدمين، يجب أولاً ضبط إعدادات قاعدة البيانات في ملف .env. مثال على ذلك:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=breeze
DB_USERNAME=root
DB_PASSWORD=

بعد ذلك شغّل أمر الترحيل لإنشاء الجداول المطلوبة:

php artisan migrate

بهذه الخطوة يصبح التطبيق جاهزاً لتخزين بيانات التسجيل والدخول واستعادة كلمة المرور وبقية العمليات المرتبطة بالمستخدمين.

تشغيل التطبيق محلياً

بعد الانتهاء من التثبيت والتهيئة والترحيل، يمكنك تشغيل المشروع عبر الأمر التالي:

php artisan serve

ثم افتح الرابط http://localhost:8000 في المتصفح لمعاينة التطبيق.

الصفحة الرئيسية لتطبيق Laravel بعد تثبيت Laravel Breeze

الصفحات التي يوفّرها النظام تلقائياً

بعد نجاح التثبيت، ستظهر لك مجموعة من الصفحات الجاهزة للاستخدام، من أبرزها:

  • صفحة تسجيل الدخول Login.
  • صفحة نسيان كلمة المرور Forgot Password.
  • صفحة إنشاء حساب Register.
  • لوحة المستخدم Dashboard.

صفحة تسجيل الدخول في Laravel Breezeصفحة استعادة كلمة المرور في Laravel Breezeصفحة إنشاء حساب جديد في Laravel Breezeلوحة التحكم Dashboard بعد تسجيل الدخول في Laravel

إضافة إطار عمل للواجهة الأمامية

لا يقتصر دور Laravel Breeze على قوالب Blade فقط، بل يمكن استخدامه أيضاً مع تطبيقات الصفحة الواحدة SPA عبر Inertia.js مع Vue أو React.

إذا رغبت في استخدام أحد هذه الخيارات، يمكنك تثبيت البنية المناسبة عبر أحد الأوامر التالية:

php artisan breeze:install vue
# Or
php artisan breeze:install react

إذا كنت قد ثبّتَّ Laravel Breeze مسبقاً دون إطار أمامي، فسيتم استبدال الملفات التي تم إنشاؤها سابقاً بملفات جديدة متوافقة مع Vue أو React.

بعد ذلك، لا تنسَ إعادة بناء الملفات الثابتة:

npm install && npm run dev

لماذا يُعد Laravel Breeze خياراً جيداً؟

يوفر Laravel Breeze عدة مزايا عملية للمطورين، أهمها:

  • تسريع بدء المشروع دون الحاجة لبناء المصادقة من الصفر.
  • تقليل الأخطاء عبر استخدام بنية موثوقة ومجرّبة.
  • سهولة التخصيص لأن جميع الملفات تُنشر داخل المشروع.
  • التكامل السلس مع أدوات Laravel الأساسية.
  • إمكانية التطوير لاحقاً نحو حلول أكثر تقدماً مثل Vue وReact.

أفضل ممارسات عند استخدام نظام المصادقة في Laravel

  1. احرص على مراجعة ملف .env وعدم رفع بيانات قاعدة البيانات إلى المستودعات العامة.
  2. اختبر صفحات التسجيل والدخول وإعادة تعيين كلمة المرور قبل نشر التطبيق.
  3. عدّل رسائل الواجهة لتلائم جمهورك المستهدف وتزيد من وضوح تجربة المستخدم.
  4. فعّل التحقق من البريد الإلكتروني إذا كان مشروعك يحتاج إلى مستوى أعلى من الموثوقية.
  5. راقب أداء الأصول المترجمة وتأكد من استخدام النسخ المناسبة في بيئة الإنتاج مثل npm run prod أو ما يعادلها بحسب إعداد المشروع.

الخلاصة التقنية

إذا كنت تبحث عن طريقة سريعة واحترافية لإضافة نظام مصادقة إلى مشروعك في Laravel 8، فإن Laravel Breeze يُعد خياراً ممتازاً للبدء. فهو يمنحك أساساً نظيفاً وقابلاً للتعديل، ويختصر كثيراً من الوقت في بناء صفحات المستخدمين والمسارات ووحدات التحكم. تقنياً، يُنصح باستخدامه في المشاريع التي تحتاج إلى انطلاقة مستقرة وخفيفة، مع إمكانية التوسع لاحقاً نحو واجهات أكثر تعقيداً باستخدام Vue أو React.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *