Dự án backend xây dựng bằng TypeScript, sử dụng Prisma ORM để kết nối và thao tác với cơ sở dữ liệu PostgreSQL. Dự án hỗ trợ xác thực người dùng bằng JWT và đăng nhập qua Google OAuth2.
Dự án được đóng gói trong Docker container để dễ dàng triển khai và phát triển.
- Node.js & TypeScript
- Prisma ORM (với PostgreSQL)
- Docker & Docker Compose
- JWT Authentication
- Google OAuth2
- Postgres Database
- Docker & Docker Compose đã được cài đặt
- Node.js (chỉ cần khi bạn muốn chạy local không dùng Docker)
Tạo file .env trong root dự án với các biến sau:
POSTGRES_URL=postgresql://myuser:mypassword@postgres-db:5432/mydatabase
PORT=3000
GOOGLE_CLIENT_ID=your-google-client-id
JWT_SECRET=your-jwt-secretdocker-compose up -dnpm install
npx prisma generate
npx tsc
node dist/server.js| Phương thức | URL | Mô tả |
|---|---|---|
| POST | /auth/login | Đăng nhập bằng JWT |
| POST | /auth/google | Đăng nhập bằng Google OAuth2 |
| POST | /auth/logout | Đăng xuất |
| GET | /auth/signup | Đăng kí |