2026-06-18 10:20:10 +06:00
# QuickLaunch Server
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
### This server is a nodejs server with express framework. It provides a REST API for quicklunch app. It is written in typescript and uses prisma for database.It is deployed on docker and is managed by docker compose.
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
### Features
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
- Authentication
- Authorization
- Database Management
- REST API
- Testing
- Deployment
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
### Technologies
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
- Nodejs
- Express
- Typescript
- Prisma
- Docker
- Docker Compose
- Bullmq
-Nodemailer
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
### Deployment
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
- Docker
- Docker Compose
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
### Authentication
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
- JWT
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
### Installation
- git clone git@codelab .techzaa.tech:summer2026/quicklanch-server.git
- cd quicklunch-server
- npm install
- npm run dev
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
### Environment variables are stored in .env file. They are:
Set up or add the following environment variables in .env file to run the server. You will copy and paste them from the .env.example file by adding Database URL,APP USER EMAIL, APP PASSWORD, CLOUD NAME, CLOUD API KEY, CLOUD API SECRET and REDIS URL :
- PORT = 5000
- DATABASE_URL
-ACCESS_TOKEN=8b8ba26578276a8bf9d0599f8c0ec0d2d69e0aec9171e989a314c36db0b330a23fd0365a6c9b1059406856046e28dc0e13c9d6a165e2936e6614aa2d1862af68
- ACCESS_EXPIRES=24h
- RESET_SECRET=8b8ba26578276a8bf9d0599f8c0ec0d2d69e0aec9171e989a314c36db0b330a23fd0365a6c9b1059406856046e28dc0e13c9d6a165e2936e6614aa2d1862af68
- RESET_EXPIRES=5m
- VERIFIED_TOKEN=8b8ba26578276a8bf9d0599f8c0ec0d2d69e0aec9171e989a314c36db0b330a23fd0365a6c9b1059406856046e28dc0e13c9d6a165e2936e6614aa2d1862af68
- FRONT_END_URL=http://localhost:5173/
- APP_USER_EMAIL
- APP_PASSWORD
- CLOUD_NAME
- CLOUD_API_KEY
- CLOUD_API_SECRET
- REDIS_URL
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
### API Documentation
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
- API documentation is available at http://localhost:5000/api-docs
2026-04-02 21:27:09 +06:00
2026-06-18 10:20:10 +06:00
### API Creating
If you need to create an new api you will only run simple command the command is
2026-04-02 21:27:09 +06:00
``` bash
2026-06-18 10:20:10 +06:00
npx exp-node-server -g API_NAME ( Your api name or folder name)
2026-04-02 21:27:09 +06:00
```
2026-06-18 10:20:10 +06:00
### API Structure
2026-04-02 21:27:09 +06:00
```
2026-06-18 10:20:10 +06:00
src/app/modules/<module-name>/
2026-04-02 21:27:09 +06:00
├── <module>.interface.ts
├── <module>.schema.ts
├── <module>.validation.ts
├── <module>.route.ts
├── <module>.controller.ts
├── <module>.service.ts
└── <module>.swagger.ts
2026-06-18 10:20:10 +06:00
` ``