- REST API principals
- CRUD
- HTTP methods
- JWT & refresh tokens
- Request validation
- Node.js
- MongoDB with Mongoose
- TypeScript
- Express.js & Express.js middleware
- Zod validation
- logger
- Validate request middleware
- Registration
- User model
- User endpoint
- User session
- Deserialize user middleware (refresh tokens)
- Get sessions
- Delete session
- Require user middleware
- Product resource
- Product model
- Create product
- Read product
- Update product
- Delete product
Note: Make sure you add .env to your .gitignore before pushing any changes to your repository. You will also want to generate new ACCESS_TOKEN_PUBLIC_KEY & ACCESS_TOKEN_PRIVATE_KEY keys and add them to your .env