DevMastery Comments Microservice API
To manage comments on various Dev Mastery properties.
Using Clean Architecture for Microservice APIs in Node.js with MongoDB and Express
In this video we talk about Bob Martin's Clean Architecture model and I will show you how we can apply it to a Microservice built in node.js with MongoDB and Express JS - @arcdev1
Features
- XSS Protection (via sanitize-html)
- Flags Spam (via Akismet)
- Flags rude or inappropriate language (English only via Content Moderator)
- Flags personally identifiable information (English only via Content Moderator)
Running Locally
Prerequisites
- Git
- Node JS
- Mongo DB (To use the Mongo DB interface as shown in the Mastery Monday youtube video, you need to install Mongo Compass)
- Azure Content Moderator account (free)
- Akismet Developer account (free)
1. Clone the repo and install dependencies
git clone
cd comments-api
npm i
2. Modify the .env file
Save sampledotenv
as .env
and then add your database and Content Moderator + Akismet API details.
3. Startup your MongoDB
Usually this is just: mongod
on the command line.
4. Start the server
To run in production mode where code is transpiled by Babel into a dist
folder and run directly in node
:
npm start
To run in development mode where code is run by babel-node via nodemon and re-transpiled any time there is a change:
npm run dev