Laravel Maestro কন্ট্রিবিউটর টিউটোরিয়াল

Laravel Starter Kit তৈরি করতে Maestro ব্যবহার করে। এই কিটগুলোতে কন্ট্রিবিউট করার জন্য ডকুমেন্টেশন খুব একটা নেই।

আপনি যদি কোনো Starter Kit-এ নতুন ফিচার যোগ করতে চান বা বাগ (bug) ফিক্স করতে চান, তবে আপনাকে ওয়ার্কফ্লোটি বুঝতে হবে। এই গাইডটি ব্যাখ্যা করে কীভাবে সঠিকভাবে Maestro ব্যবহার করতে হয়।

ডিরেক্টরি স্ট্রাকচার

রিপোজিটরিতে তিনটি প্রধান অংশ রয়েছে:

  • kits/: এখানে আসল Starter Kit ফাইলগুলো থাকে। এটিই একমাত্র ডিরেক্টরি যা আপনি কমিট (commit) করবেন।
  • orchestrator/: এটি বিল্ড প্রসেস পরিচালনা করে এবং কিটগুলো রান করে।
  • build/: এটি একটি সাময়িক ওয়ার্কস্পেস। আপনি যখন একটি বিল্ড রান করেন, Maestro এটি তৈরি করে।

ডেভেলপমেন্ট ওয়ার্কফ্লো

একসাথে অনেকগুলো ফাইল আপডেট না করলে সরাসরি kits/ ডিরেক্টরিতে কাজ করবেন না। পরিবর্তে, নিচের ধাপগুলো অনুসরণ করুন:

১. এনভায়রনমেন্ট সেটআপ করুন

orchestrator/ ফোল্ডারে যান। composer install এবং npm install রান করুন।

২. আপনার টার্গেট কিটটি বিল্ড করুন

php artisan build রান করুন। আপনার ফ্রেমওয়ার্ক, ভ্যারিয়েন্ট এবং ফিচারগুলো নির্বাচন করুন। এটি build/ ফোল্ডারটি তৈরি করবে।

৩. কিটটি রান করুন

orchestrator/ ফোল্ডার থেকে composer kit:run ব্যবহার করুন। এটি পোর্ট 8000-এ অ্যাপ্লিকেশনটি চালু করবে।

৪. আপনার পরিবর্তনগুলো করুন

build/ ডিরেক্টরি ওপেন করুন। যে ফাইলগুলো পরিবর্তন করা প্রয়োজন সেগুলো খুঁজে বের করুন এবং এডিট করুন।

৫. ওয়াচারকে (watcher) কাজ করতে দিন

Maestro একটি ওয়াচার ব্যবহার করে। আপনি যখন build/-এ কোনো ফাইল সেভ করেন, এটি স্বয়ংক্রিয়ভাবে kits/ ডিরেক্টরিতে সঠিক ফাইলটি আপডেট করে দেয়।

৬. আপনার পরিবর্তনগুলো টেস্ট করুন

প্রথমে kit:run প্রসেসটি বন্ধ করুন। কিটটি চলাকালীন আপনি টেস্ট রান করতে পারবেন না। orchestrator/ ফোল্ডার থেকে রান করুন:

  • composer kits:pint (ফরম্যাটিংয়ের জন্য)
  • composer kits:check (PHP টেস্টের জন্য)
  • composer kits:lint (JavaScript টেস্টের জন্য)

৭. আপনার কাজ কমিট করুন

আপনার git status চেক করুন। আপনি kits/ ফোল্ডারে পরিবর্তনগুলো দেখতে পাবেন। শুধুমাত্র kits/ ডিরেক্টরি আপনার কমিটে যোগ করুন।

উদাহরণ: "Log in" টেক্সট পরিবর্তন করে "Log on" করা

  • build/-এর ভেতরে থাকা blade বা component ফাইলটি এডিট করুন।
  • ওয়াচারটি kits/ আপডেট করার জন্য অপেক্ষা করুন।
  • অন্যান্য ভ্যারিয়েন্টগুলো নষ্ট হয়নি তা নিশ্চিত করতে টেস্ট রান করুন।
  • kits/-এর ফাইলগুলো কমিট করুন।

এই প্রক্রিয়াটি নিশ্চিত করে যে আপনার কন্ট্রিবিউশনটি পরিচ্ছন্ন থাকে এবং Maestro আর্কিটেকচার অনুসরণ করে।

উৎস: https://dev.to/catatsumuri/laravel-maestro-contributor-tutorial-2p89