QuickLaunch Server

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.

Features

  • Authentication
  • Authorization
  • Database Management
  • REST API
  • Testing
  • Deployment

Technologies

  • Nodejs
  • Express
  • Typescript
  • Prisma
  • Docker
  • Docker Compose
  • Bullmq -Nodemailer

Deployment

  • Docker
  • Docker Compose

Authentication

  • JWT

Installation

  • git clone git@codelab.techzaa.tech:summer2026/quicklanch-server.git
  • cd quicklunch-server
  • npm install
  • npm run dev

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

API Documentation

API Creating

If you need to create an new api you will only run simple command the command is

 npx exp-node-server -g API_NAME (Your api name or folder name)

API Structure

 src/app/modules/<module-name>/
 ├── <module>.interface.ts
 ├── <module>.schema.ts
 ├── <module>.validation.ts
 ├── <module>.route.ts
 ├── <module>.controller.ts
 ├── <module>.service.ts
 └── <module>.swagger.ts
S
Description
No description provided
Readme 194 KiB
Languages
TypeScript 98.5%
Dockerfile 0.8%
PLpgSQL 0.7%