āđāļāļāļĒāđāļŠāļģāļŦāļĢāļąāļāļāļąāđāļ Backend āļāļ°āđāļāđāļāļāļēāļĢāļāļĢāļ°āđāļĄāļīāļāļāļ·āđāļāļāļēāļāļāļ§āļēāļĄāđāļāđāļēāđāļāđāļāļāļēāļĢāļāļąāļāļāļē Backend API , āļāļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļāđāļāļāļēāļĢāļŠāļ·āļāļāđāļāļāđāļāļĄāļđāļĨ āđāļĨāļ° āļāļ§āļēāļĄāđāļāđāļāļĢāļ°āđāļāļĩāļĒāļāļāļāļāđāļāđāļāļāļĩāđāđāļāļĩāļĒāļ
āļŠāļģāļŦāļĢāļąāļāđāļāļāļĒāđāļāļāļāļāļąāđāļ Backend āļāļ°āđāļŦāđāļŠāļĢāđāļēāļ Rest API āļŠāļģāļŦāļĢāļąāļāđāļāđāļāļāđāļāļĄāļđāļĨāļāļāļ Rider āđāļāļĒāļĄāļĩāļāđāļāļāļģāļŦāļāļāļāļąāļāļāļĩāđ
- āļāļąāļāļāļēāļāđāļ§āļĒ NestJS Framework āđāļāļĒāđāļāđāļ āļēāļĐāļē Typescript āđāļāļāļēāļĢāđāļāļĩāļĒāļ āđāļāđāļēāļāļąāđāļ
- āđāļāđ Library Prisma āđāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ Database āđāļāļĒāđāļāđ Database āđāļāđāļ SQLite
- āđāļāļāļēāļĢāļāļģāļāļēāļāļāļĢāļīāļāđāļĢāļēāļāļģāđāļāđāļāļāļĩāđāļāļ°āļāđāļāļāļāļģāļāļēāļāļĢāđāļ§āļĄāļāļąāļāļāļāļāļ·āđāļāļāļąāļāļāļąāđāļāđāļĢāļēāļāļķāļāļāļ§āļĢāļāļģ API Documentation āđāļŦāđāļĄāļĩāļĢāļēāļĒāļĨāļ°āđāļāļĩāļĒāļāļāļĩāđāđāļāļĩāļĒāļāļāļāļāđāļāļāļēāļĢāđāļāđāļāļēāļ āđāļāļĒāđāļŦāđāđāļāđ Swagger āđāļāļāļēāļĢāļŠāļĢāđāļēāļ API Documentation
- āļŠāļĢāđāļēāļ Entity āļŠāļģāļŦāļĢāļąāļāđāļāđāļāļāđāļāļĄāļđāļĨāļāļāļ Rider āđāļāļĒāļĄāļĩāļāđāļāļĄāļđāļĨāļāļąāļāļāļĩāđ
- id: number (Primary Key)
- firstName: string
- lastName: string
- email: string
- licensePlate: string
- phoneNumber: string
- createdAt: Date
- updatedAt: Date
- āļŠāļĢāđāļēāļ API āđāļāļĒāļĄāļĩ Route CRUD āļŠāļģāļŦāļĢāļąāļāļāđāļāļĄāļđāļĨāļāļāļ Rider āļāļąāļāļāļĩāđ
GET /riders
GET /riders/:id
POST /riders
PATCH /riders/:id
DELETE /riders/:id
- āļŠāļĢāđāđāļēāļ Entity āļŠāļģāļŦāļĢāļąāļāđāļāđāļāļāļģāđāļŦāļāđāļāļāļāļ Rider āđāļāļĒāļĄāļĩāļāđāļāļĄāļđāļĨāļāļąāļāļāļĩāđ
- id: number (Primary Key)
- riderId: number (Foreign Key)
- latitude: number
- longitude: number
- createdAt: Date
- updatedAt: Date
- āļŠāļĢāđāļēāļ API āđāļāļĒāļĄāļĩ Route āļŠāļģāļŦāļĢāļąāļāļāđāļāļĄāļđāļĨāļāļģāđāļŦāļāđāļāļāļāļ Rider āļāļąāļāļāļĩāđ
GET /riders/:riderId/locations
POST /riders/:riderId/locations
- āļŠāļĢāđāļ API āļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļāđāļāļŦāļē Rider āļāļąāđāļāļŦāļĄāļ āđāļāļĒāđāļŦāđāļāļģāđāļŦāļāđāļāļāļāļ Rider āļāļĒāļđāđāđāļāļĢāļąāļĻāļĄāļĩ 5 āļāļīāđāļĨāđāļĄāļāļĢ āļāļēāļāļāļģāđāļŦāļāđāļāļāļĩāđāļāļģāļŦāļāļ (Optional āļāļ°āđāļāļāļāļīāđāļĻāļĐ)
GET /riders/search?latitude={āļāđāļē latitude}&longitude={āļāđāļē longitude}
- API āļŠāļēāļĄāļēāļĢāļāđāļāđāļāļēāļāđāļāđāļāļēāļĄ Requirement
- āļāļ§āļēāļĄāđāļāđāļāļĢāļ°āđāļāļĩāļĒāļāļāļāļāđāļāđāļ (Clean Code + Best Practice)
- āļāļēāļĢāļāļąāļāļ§āļēāļāđāļāļĢāļāļŠāļĢāđāļēāļāđāļāļĢāđāļāļ (Project Structure)
- āļāļ§āļēāļĄāļĢāļ°āđāļāļĩāļĒāļāļāļāļ API Documentation
- āđāļāđāļ·āļāļāļāđāļ§āļĒāļāļēāļĢāļāļąāļāļāļēāđāļāļāļāļąāļāļļāļāļąāļāļāļģāđāļāđāļāļāđāļāļāļĢāļāļāļĢāļąāļāļāļēāļĢāđāļāđāļāļēāļāļāđāļ§āļĒ Container āļāļąāļāļāļąāđāļāļŦāļēāļāļŠāļēāļĄāļēāļĢāļāđāļāđ Docker āđāļāļāļēāļĢāļŠāļĢāđāļēāļ Container āļāļāļ API āļāļāļāđāļĢāļēāđāļāđāļāļ°āđāļāđāļāļ°āđāļāļāļāļīāđāļĻāļĐ
- āļāļēāļĢāļāļģ Unit Test āļŠāļģāļŦāļĢāļąāļ API Jest
- āđāļāđāļ Configuration āļāļāļ Database āđāļāđāļāļĨāđ .env
- Upload āđāļāđāļāļāļāļāļāļļāļāļĨāļāđāļ Github āđāļĨāļ°āļŠāđāļāļĨāļīāđāļāļāđāļĄāļēāļĒāļąāļāļāļāļĢāđāļĄāļāļĩāđāļŠāđāļāđāļŦāđ