Skip to content
/ node-api Public

Backend API using the latest technologies and standards. Built to scale

License

Notifications You must be signed in to change notification settings

x249/node-api

Repository files navigation

Node API

Build Status Codacy Badge Maintainability BCH compliance Coverage Status GitHub Release Date GitHub package.json version GitHub

Backend API using the latest technologies and standards. Built to scale

Features

  • RESTful Architecture
  • Easy-to-read code
  • Built with Scalability in mind
  • TypeScript
  • Express
  • MongoDB
  • Docker
  • Process Management and Clustering using PM2
  • Unit and Integration testing ready
  • API Documentation using SwaggerUI
  • Authentication and Authorization (JWT and Role based)
  • Middleware Handling
  • Error Handling
  • Security Headers (Rate limiting, CORS, XSS, CSRF*)

(* not yet implemented)

Requirements

  • Node >= 8.16.1
  • NPM >= 6.4.1
  • Yarn >= 1.15.2
  • Docker-Compose >= 1.24.0

Build Setup

# run using docker
$ docker-compose up -d

# install dependencies
$ yarn install

# serve with hot reload at localhost:4000
$ yarn dev

# run tests
$ yarn test

# build for production and launch server
$ yarn prod

Enivronment Variables

SECRET # for JWT encoding
API_VER # current version of the API
DB_URL # url for the mongo database

License

GNU General Public License v3.0