- Enhanced `README.md` with a quick start guide and detailed project structure. - Updated `SETUP_GUIDE.md` by removing it as it was redundant. - Improved `local-development.md` and `development.md` with clearer instructions for database migrations. - Added bilingual comments in various scripts for better understanding and usability. - Updated `.gitignore` to include specific build scripts while ignoring others. - Enhanced `scripts` for database management, including backup and seeding functionalities with bilingual support.
1.8 KiB
1.8 KiB
Hướng Dẫn Development
Cấu Trúc Dự Án
├── apps/ # Frontend applications
├── services/ # Backend microservices
├── packages/ # Shared libraries
├── infra/ # Infrastructure configs
├── deployments/ # Deployment configs
├── scripts/ # Automation scripts
└── docs/ # Documentation
Quy Trình Development
1. Tạo Feature Branch
git checkout -b feature/my-feature
2. Thực Hiện Thay Đổi
- Viết code tuân theo TypeScript strict mode
- Thêm tests cho chức năng mới
- Cập nhật tài liệu nếu cần
3. Chạy Tests Locally
# Tất cả tests
pnpm test
# Service cụ thể
pnpm --filter @goodgo/auth-service test
4. Lint và Format
pnpm lint
pnpm format
5. Tạo Pull Request
- Push branch của bạn
- Tạo PR target
develop - CI/CD sẽ chạy tự động
Thêm Service Mới
-
Sử dụng template:
./scripts/utils/create-service.sh my-new-service -
Cập nhật cấu hình service
-
Implement business logic
-
Thêm tests
-
Cập nhật tài liệu
Thêm Package Mới
- Tạo package trong
packages/new-package - Thêm vào workspace trong
pnpm-workspace.yaml - Export từ
index.ts - Thêm tests
- Ghi lại cách sử dụng
Database Migrations
Database Migrations
# Tạo migration (dev)
./scripts/db/migrate.sh auth-service dev
# Áp dụng migrations (production)
./scripts/db/migrate.sh auth-service deploy
Debugging
- Sử dụng logger từ
@goodgo/logger - Kiểm tra Traefik logs:
docker logs traefik-local - Kiểm tra service logs:
./scripts/dev/logs.sh auth-service