Skip to content

Latest commit

 

History

History

README.md

Node.js architecture 🛡️

Development

We use node version 10.15.0

nvm install v14.0.0
nvm use 14.0.0

The first time, you will need to run

npm install

Then just start the server with

npm run start

It uses nodemon for livereloading :peace-fingers:

API Validation

By using celebrate the req.body schema becomes clary defined at route level, so even frontend devs can read what an API endpoint expects without need to writting a documentation that can get outdated quickly.

route.post('/signup', 
 celebrate({
   body: Joi.object({
     name: Joi.string().required(),
     email: Joi.string().required(),
     password: Joi.string().required(),
   }),
 }),
 controller.signup)

Example error

{
 "errors": {
   "message": "child \"email\" fails because [\"email\" is required]"
 }
} 

Roadmap

  • API Validation layer (Celebrate+Joi)
  • Unit tests examples
  • The logging 'layer'
  • Add agenda dashboard
  • Continuous integration with CircleCI 😍
  • Deploys script and docs for AWS Elastic Beanstalk and Heroku
  • Integration test with newman 😉
  • Instructions on typescript debugging with VSCode