A boilerplate application for building RESTful APIs Microservice in Node.js using express and mongoose in ES6 with code coverage and JsonWebToken Authentication. Helps you stay productive by following best practices. Follows Airbnb's Javascript style guide. JavaScript code linting is done using ESLint, a pluggable linter tool for identifying and reporting on patterns in JavaScript. Uses ESLint with eslint-config-Airbnb, which tries to follow the Airbnb JavaScript style guide. Supports code coverage of ES6 code using istanbul and mocha. Code coverage reports are saved in the coverage/directory post yarn test execution. Open coverage/lcov-report/index.html to view the coverage report. yarn test also displays code coverage summary on the console. Code coverage can also be enforced overall and per file as well, configured via .istanbul.yml.
Features
- Supports authentication using jsonwebtoken
- ES6 support using Babel
- JavaScript code linting is done using ESLint
- Restart the server using nodemon in real-time anytime an edit is made, with babel compilation and eslint
- Validate body, params, query, headers and cookies of a request
- Runs lint and tests before any commit is made locally