آموزش مشارکت‌کنندگان Laravel Maestro

لاراول از Maestro برای ساخت استارتر کیت‌ها (Starter Kits) استفاده می‌کند. مستندات مربوط به مشارکت در این کیت‌ها بسیار اندک است.

اگر می‌خواهید ویژگی‌های جدیدی اضافه کنید یا باگ‌ها را در یک استارتر کیت رفع کنید، باید گردش کار (workflow) را درک کنید. این راهنما نحوه استفاده صحیح از Maestro را توضیح می‌دهد.

ساختار دایرکتوری

این مخزن دارای سه بخش اصلی است:

  • kits/: این پوشه فایل‌های اصلی استارتر کیت را نگه می‌دارد. این تنها دایرکتوری‌ای است که باید آن را commit کنید.
  • orchestrator/: این پوشه فرآیند ساخت (build) را مدیریت کرده و کیت‌ها را اجرا می‌کند.
  • build/: این یک فضای کاری موقت است. Maestro هنگام اجرای build، این پوشه را ایجاد می‌کند.

گردش کار توسعه

مستقیماً در دایرکتوری kits/ کار نکنید، مگر اینکه بخواهید چندین فایل را به طور همزمان به‌روزرسانی کنید. در عوض، این مراحل را دنبال کنید:

  1. آماده‌سازی محیط به پوشه orchestrator/ بروید. دستورات composer install و npm install را اجرا کنید.

  2. ساخت کیت مورد نظر دستور php artisan build را اجرا کنید. فریم‌ورک، variant و ویژگی‌های خود را انتخاب کنید. این کار پوشه build/ را ایجاد می‌کند.

  3. اجرای کیت از پوشه orchestrator/ از دستور composer kit:run استفاده کنید. این دستور برنامه را روی پورت 8000 اجرا می‌کند.

  4. اعمال تغییرات دایرکتوری build/ را باز کنید. فایل‌هایی که نیاز به تغییر دارند را پیدا کرده و ویرایش کنید.

  5. اجازه دهید watcher کار خود را انجام دهد Maestro از یک watcher استفاده می‌کند. وقتی فایلی را در build/ ذخیره می‌کنید، این ابزار به طور خودکار فایل مربوطه را در دایرکتوری kits/ به‌روزرسانی می‌کند.

  6. تست تغییرات ابتدا فرآیند kit:run را متوقف کنید. تا زمانی که کیت در حال اجرا باشد، نمی‌توانید تست‌ها را اجرا کنید. از پوشه orchestrator/ دستورات زیر را اجرا کنید:

  • composer kits:pint (برای قالب‌بندی/formatting)
  • composer kits:check (برای تست‌های PHP)
  • composer kits:lint (برای تست‌های JavaScript)
  1. ثبت (Commit) کار وضعیت git خود را بررسی کنید. باید تغییراتی را در پوشه kits/ مشاهده کنید. فقط دایرکتوری kits/ را به commit خود اضافه کنید.

مثال: تغییر متن از "Log in" به "Log on"

  • فایل blade یا component را در داخل build/ ویرایش کنید.
  • منتظر بمانید تا watcher پوشه kits/ را به‌روزرسانی کند.
  • تست‌ها را اجرا کنید تا مطمئن شوید سایر variantها دچار مشکل نشده‌اند.
  • فایل‌های موجود در kits/ را commit کنید.

این فرآیند تضمین می‌کند که مشارکت شما تمیز باقی می‌ماند و از معماری Maestro پیروی می‌کند.

منبع: https://dev.to/catatsumuri/laravel-maestro-contributor-tutorial-2p89