Hướng dẫn dành cho người đóng góp Laravel Maestro

Laravel sử dụng Maestro để xây dựng các Starter Kit. Tài liệu hướng dẫn đóng góp cho các bộ kit này còn khá khan hiếm.

Nếu bạn muốn thêm tính năng hoặc sửa lỗi trong một Starter Kit, bạn cần hiểu quy trình làm việc. Hướng dẫn này sẽ giải thích cách sử dụng Maestro một cách chính xác.

Cấu trúc thư mục

Kho lưu trữ có ba phần chính:

  • kits/: Chứa các tệp Starter Kit thực tế. Đây là thư mục duy nhất bạn cần commit.
  • orchestrator/: Quản lý quá trình build và chạy các kit.
  • build/: Đây là không gian làm việc tạm thời. Maestro sẽ tạo thư mục này khi bạn chạy lệnh build.

Quy trình phát triển

Đừng làm việc trực tiếp trong thư mục kits/ trừ khi bạn đang cập nhật nhiều tệp cùng một lúc. Thay vào đó, hãy làm theo các bước sau:

1. Thiết lập môi trường

Di chuyển đến thư mục orchestrator/. Chạy composer installnpm install.

2. Build kit mục tiêu của bạn

Chạy php artisan build. Chọn framework, variant và các tính năng của bạn. Việc này sẽ tạo ra thư mục build/.

3. Chạy kit

Sử dụng composer kit:run từ thư mục orchestrator/. Lệnh này sẽ khởi chạy ứng dụng trên cổng 8000.

4. Thực hiện thay đổi

Mở thư mục build/. Tìm các tệp bạn cần thay đổi và chỉnh sửa chúng.

5. Để watcher hoạt động

Maestro sử dụng một watcher. Khi bạn lưu một tệp trong build/, nó sẽ tự động cập nhật tệp tương ứng trong thư mục kits/.

6. Kiểm tra các thay đổi của bạn

Trước tiên, hãy dừng tiến trình kit:run. Bạn không thể chạy kiểm thử khi kit đang chạy. Từ thư mục orchestrator/, hãy chạy:

  • composer kits:pint (để định dạng code)
  • composer kits:check (để kiểm thử PHP)
  • composer kits:lint (để kiểm thử JavaScript)

7. Commit công việc của bạn

Kiểm tra git status. Bạn sẽ thấy các thay đổi trong thư mục kits/. Chỉ thêm thư mục kits/ vào commit của bạn.

Ví dụ: Thay đổi văn bản từ "Log in" thành "Log on"

  • Chỉnh sửa tệp blade hoặc component bên trong build/.
  • Đợi watcher cập nhật kits/.
  • Chạy kiểm thử để đảm bảo bạn không làm hỏng các variant khác.
  • Commit các tệp trong kits/.

Quy trình này đảm bảo đóng góp của bạn luôn sạch sẽ và tuân thủ kiến trúc của Maestro.

Nguồn: https://dev.to/catatsumuri/laravel-maestro-contributor-tutorial-2p89