Postal Mail Server REST API - In Development
Install the dependencies:
yarn install
Set the environment variables:
cp .env.example .env
# open .env and modify the environment variables (if needed)
Running locally:
yarn dev
Running in production:
yarn start
Testing:
# run all tests
yarn test
The environment variables can be found and modified in the .env
file. They come with these default values:
#Server environment
NODE_ENV=development
#Port number
PORT=5000
#Db configuration
DB_HOST=db-host
DB_USER=db-user
DB_PASS=db-pass
DB_NAME=db-name
# JWT secret key
JWT_SECRET=your-jwt-secret-key
# Number of minutes after which an access token expires
JWT_ACCESS_EXPIRATION_MINUTES=5
# Number of days after which a refresh token expires
JWT_REFRESH_EXPIRATION_DAYS=30
#Log config
LOG_FOLDER=logs/
LOG_FILE=%DATE%-app-log.log
LOG_LEVEL=error
#Redis
REDIS_HOST=redis-host
REDIS_PORT=6379
REDIS_USE_PASSWORD=no
REDIS_PASSWORD=your-password
specs\
src\
|--config\ # Environment variables and configuration related things
|--controllers\ # Route controllers (controller layer)
|--dao\ # Data Access Object for models
|--db\ # Migrations and Seed files
|--models\ # Sequelize models (data layer)
|--routes\ # Routes
|--services\ # Business logic (service layer)
|--helper\ # Helper classes and functions
|--validations\ # Request data validation schemas
|--app.js # Express app
|--cronJobs.js # Job Scheduler
|--index.js # App entry point