Dự án này là một template NodeJS sử dụng kiến trúc MVCS (Model – View – Controller – Service), giúp tách biệt rõ ràng các tầng xử lý, dễ dàng bảo trì, mở rộng và kiểm thử. Dự án phù hợp để phát triển các RESTful API hiện đại, bảo mật và dễ mở rộng.
src/
├── configs/ # Cấu hình (database, env, email, CORS, ...)
├── controllers/ # Xử lý request, gọi service, trả response
├── middlewares/ # Các middleware cho Express (auth, logger, error, ...)
├── migrations/ # Script migrate database
├── models/ # Định nghĩa schema/model cho database
├── routes/ # Định nghĩa các route của API
├── services/ # Xử lý logic nghiệp vụ, giao tiếp với model
├── types/ # Định nghĩa type, interface mở rộng cho project
├── utils/ # Các hàm tiện ích dùng chung
├── validations/ # Validate dữ liệu đầu vào
├── app.ts # Khởi tạo app Express
└── server.ts # Điểm bắt đầu chạy server
- Node.js
- TypeScript
- Express.js
- Nodemon
- Zod (validation)
- dotenv (env config)
- ...và các thư viện hữu ích khác
git clone <repo-url>
cd Template-NodeJS
npm installTạo file .env từ file mẫu:
cp .env.example .envSau đó cập nhật các biến môi trường phù hợp trong file .env.
npm run migrate-
Chạy ở chế độ phát triển (hot reload):
npm run dev
-
Build & chạy production:
npm run build npm start
| Lệnh | Chức năng |
|---|---|
npm run dev |
Chạy server ở chế độ phát triển (dùng nodemon) |
npm run build |
Biên dịch TypeScript sang JavaScript |
npm start |
Chạy server ở chế độ production |
npm run migrate |
Chạy migration database (nếu có) |
- Fork repository
- Tạo branch mới (
git checkout -b feature/ten-tinh-nang) - Commit thay đổi (
git commit -m 'Add new feature') - Push lên branch (
git push origin feature/ten-tinh-nang) - Tạo Pull Request
Liên hệ: Nếu có thắc mắc hoặc cần hỗ trợ, vui lòng tạo issue hoặc liên hệ trực tiếp qua email.