Slide: https://docs.google.com/presentation/d/1EKCk1ftGjdvLh7Fq7_1O8BQgpnX-XrR7q0IQ3URR0Fw/edit?usp=sharing
API docs: https://demo.ytli.tw/docs
- add
.env.developmentto root folder, please refer to.env.example - start the local db using docker container for development
docker compose --profile development --env-file .env.development up -d
- install dependencies
npm i
- start the app
npm run start:dev
- add
.env.productionto root folder, please refer to.env.example - start the app
docker compose --profile production --env-file .env.production up -d
- Get hotel by id
- Get all hotel with pagination
- Create hotel
- Update hotel
- Batch insert hotel with csv file
- allow partial success imports
- check missing field
- check wrong types
- allow empty rows in csv
- Login
- Issue JWT for authorization
- Refresh JWT access token by Cookie
- Sign Up (Create User)
- Get user by ID
- Update user data (required authentication)
- Nest.js framework
- MySQL with TypeORM
- Jest for unit testing
- supertest for e2e testing
- Containerization with Docker
- Github and Github actions
- Nginx for reverse proxy and add TLS certs
- Swagger for API Docs
