- Documentation
- Deployed API
- Completion as per provided docs
- Steps to Run Locally
- Steps for local building
- Steps to run via docker
- All routes/endpoints completed
- Real time notification system complete
- JWT, RBAC, Rate limiter, XSS, ValidateZOD Middleware
- Validation and Error Handling Complete
- Image Upload (Multer), Search and Filter, Pagination Complete
- Project Structure Organized
- Eslint Linter, Logging via Winston, Prettier
- Reset Password and Otp Via Nodemailer
- Docker for Containerization
- Documentation on Postman, Deployment on EC2
-
Clone the repository
git clone https://github.com/Kushagra102/bidding-api.git cd bidding-api
-
Install dependencies
npm install
-
Fill in the environment variables in a
.env
fileDATABASE_URL="POSTGRESQL_DATABASE_URL" JWT_SECRET="your_jwt_secret" PORT=3000 MAILER_EMAIL_ID="YOUR_EMAIL_ID" MAILER_PASSWORD="YOUR_EMAIL_APP_PASSWORD"
-
Generate Prisma client
npx prisma generate
-
Start the development server
npm run dev
npm run build
npm run start
docker build --build-arg PORT=3000 --build-arg DATABASE_URL="postgresql://postgres:password@localhost:5432/db?schema=public" --build-arg JWT_SECRET="your_jwt_secret" --build-arg MAILER_EMAIL_ID="YOUR_EMAIL_ID" --build-arg MAILER_PASSWORD="YOUR_EMAIL_APP_PASSWORD" -t server .
docker run -p 3000:3000 server
Run the following command to lint your code:
npm run lint
Run the following command to format your code:
npm run format