ارزیابی: اصول طراحی PHP در Laravel

برای ارزیابی دانش داوطلب در خصوص اصول طراحی PHP و پیاده‌سازی آن بر روی چارچوب Laravel طراحی شده است. این ارزیابی به 3 سطح تقسیم شده است و هر سطح بر سطح قبلی ساخته شده است.

تکنولوژی‌های مورد استفاده

  • Laravel
  • Inertia.js (Vue.js)
  • Pest
  • Laravel Breeze
  • Laravel Role Permission
  • Laravel Media Library

⚠️ می توانید به جای vue از react استفاده کنید. ترجیج و امتیاز بالاتر به vue است

سطوح ارزیابی

سطح 1: ثبت‌نام کاربر و احراز هویت

هدف: پیاده‌سازی امکانات ساده‌ی ثبت‌نام کاربر و احراز هویت، شامل احراز هویت از طریق ایمیل.

وظایف:

  1. ایجاد یک پروژه Laravel.
  2. تنظیم امکانات ثبت‌نام و ورود کاربر.
  3. پیاده‌سازی احراز هویت از طریق ایمیل برای ثبت‌نام کاربر.
  4. استفاده از Laravel Breeze برای احراز هویت

سطح 2: نقش‌ها و مجوزهای کاربر

هدف: ارتقاء سیستم مدیریت کاربر با پیاده‌سازی نقش‌ها و مجوزها.

وظایف:

  1. تعریف نقش‌های مختلف کاربر (مثل مدیر، مدیران، مشتریان).
  2. اختصاص مجوزهای مناسب به هر نقش.
  3. پیاده‌سازی middleware برای بررسی مجوزهای کاربر برای انجام عملیات مشخص.
  4. امکان تعلیق کاربران توسط نقش مدیر.

سطح 3: مدیریت پروفایل و رسانه

هدف: اضافه کردن مدیریت پروفایل و امکان آپلود رسانه (مثل تصویر پروفایل) به سیستم مدیریت کاربر.

وظایف:

  1. ایجاد صفحه پروفایل کاربر برای ویرایش اطلاعات کاربری.
  2. پیاده‌سازی کتابخانه رسانه Laravel برای مدیریت تصاویر پروفایل.
  3. اطمینان از اینکه تنها کاربر مالک پروفایل قادر به ویرایش آن است.
  4. پیاده‌سازی تست‌های مناسب با Pest برای اعتبارسنجی عملکرد.

نیازهای اضافی

  • فایل .env باید به عنوان بخشی از راه‌اندازی پروژه به .env-example تغییر نام داده شود.
  • در صورت نیاز حتما برای اجرای پروژه seeder قرار دهید.
  • حتما فایل read me جهت راه اندازی پروژه وجود داشته باشد

مخزن

پروژه کامل باید در یک مخزن عمومی برای بررسی قرار گیرد.