Chúng tôi hoan nghênh mọi đóng góp! Đây là cách bạn có thể giúp.
- Fork repository
- Tạo nhánh tính năng từ
main:git checkout main && git pull origin main && git checkout -b feature/tinh-nang-moi - Cài đặt pre-commit hook (khuyến nghị):
cp scripts/pre-commit .git/hooks/ && chmod +x .git/hooks/pre-commit - Thực hiện thay đổi
- Chạy tests và linting:
bun run lint bun run build cd src-tauri && cargo check
- Commit thay đổi:
git commit -m 'feat: thêm tính năng mới' - Push lên nhánh:
git push origin feature/tinh-nang-moi - Mở Pull Request với base branch là
main
- Luôn tách nhánh từ
mainmới nhất trước khi bắt đầu làm. - Đặt tên nhánh rõ ràng và tập trung, ví dụ
feature/browser-extension-docshoặcfix/download-path. - Nếu Pull Request bị stale, hãy cập nhật nhánh của bạn với
maintrong quá trình làm. - Khi mở Pull Request, chọn
mainlàm base branch và nhánh feature/fix của bạn làm compare branch. - Không merge trực tiếp vào
main; hãy dùng Pull Request để thay đổi được review.
Chúng tôi tuân theo Conventional Commits:
feat:- Tính năng mớifix:- Sửa lỗidocs:- Thay đổi tài liệustyle:- Thay đổi style code (formatting, v.v.)refactor:- Tái cấu trúc codetest:- Thêm hoặc cập nhật testschore:- Công việc bảo trì
- Chạy
bun run tauri devđể hot-reload khi phát triển - Thay đổi Frontend phản ánh ngay lập tức
- Thay đổi Rust cần biên dịch lại (tự động ở chế độ dev)
- Sử dụng TypeScript cho code frontend
- Tuân theo các pattern và convention hiện có
- Sử dụng Biome để lint và format
- Giữ component nhỏ và tập trung
- Giữ PR tập trung vào một tính năng hoặc sửa lỗi
- Viết commit message rõ ràng theo quy ước
- Cập nhật tài liệu nếu cần
- Test kỹ các thay đổi trước khi submit