A 👨🏻💻 Nx-Node-Typescript/Express/MongoDB Boilerplate with User Authentication and Authorization with JWT support.This is an updated version of Sam Quinn's bulletproof-nodejs implementation Link to Repo
This project was generated using Nx.
🐞 Bug Report
📢 Feature Request
🔎 Nx is a set of Extensible Dev Tools for Monorepos.
- Node.js, TypeScript , JWT, Prettier— core platforms.
- MongoDB — data access and db automation.
- Jest - unit and snapshot testing.
- Newrelic.com - server monitoring.
We use node
version 10.15.0
nvm install 10.15.0
nvm use 10.15.0
The first time, you will need to run
npm install
Run nx serve
for a dev server. Navigate to http://localhost:4000/. The app will automatically reload if you change any of the source files.
/api/v1/generateApiKey
REQUEST BODY
{
email: <EMAIL_ID>
}
RESPONSE BODY
{
"apiKey": <VALUE>
}
Add this apiKey to request header for any server request as
headers {
'x-api-key' : <VALUE>
}
Run npm run build
to build the project. The build artifacts will be stored in the dist/
directory. Use the --prod
flag for a production build.
Run nx dep-graph
to see a diagram of the dependencies of your projects.
Visit the Nx Documentation to learn more.
Newrelic.com used for server monitoring
To add your own monitor dashboard register at newrelic.com, setup new application and follow steps. Then replace newrelic.js.template file with the file provided by the at the time of setup.
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.