Hey there!
Have you tried to set up a backend NodeJS app with typescript, passport, JWT, socket.io, HTTPS, HTTP2, async/await, nodemailer, templates, pagination, docker, yada yada !@#$%^&*() ?
Hope I didn't scare you away with those jargons :)
If you're still there, welcome onboard!
I have spent quite some time surfing around looking for the right NodeJS backend setup for my webapps but I haven't quite found the one that fits all of my needs. So here we go, same old same old introduction:
NodeJS Rest Express MongoDB (REM) - a production-ready lightweight backend setup.
Ready? Go...
Typescript Express 4.15 CORS Helmet DotEnv joi (validation) forever
Mongoose 4.9 Passport JWT Await
Tslint Apidoc Docker Husky Morgan Travis Windows (Powershell)
Tests
Mocha Chai Sinon istanbul
MORE:
HTTPS HTTP2 (spdy) Socketio 2.1 Init DB Data
Slack message Nodemailer Mailgun Email Templates Forgot Password
VSCode Debug Dependabot Codacy File upload (multer)
API
API response (data, meta: limit, offset, sort) Transform res
apiJson Pagination query Regex query Whitelist fields in response
mstime API response time Stack trace in Response
Hope that one didn't hurt your eyes also :] (hey, you're still here with me right?)
Ok, I admit that I'm not good at writing these stuff.
How about a link if you're still interested in all of those jargons and want to set up a robust backend app?
ngduc / node-rem
Node REM - NodeJS Rest Express MongoDB and more: typescript, passport, JWT, socket.io, HTTPS, HTTP2, async/await, nodemailer, templates, pagination, docker, etc. Live Demo: https://node-rem-ngduc.vercel.app
Node REM
NodeJS Rest Express MongoDB (REM) - a production-ready lightweight backend setup.
Live Demo (login with a test user: user1@example.com, user111 - inspect API calls to learn more)
🌟 It rains cats and dogs features:
Typescript Express CORS Helmet DotEnv joi (validation) forever
Mongoose Passport JWT Await
Tslint Apidoc Docker Husky Morgan Travis Unix/Mac/Win (Powershell)
Tests
Mocha Chai Sinon istanbul
MORE:
HTTPS HTTP2 (spdy) Socketio 2.1 Init DB Data
Slack message Nodemailer Mailgun Email Templates Forgot Password
VSCode Debug Dependabot Codacy File upload (multer)
API
API response (data, meta: limit, offset, sort) Transform res
apiJson Pagination query
Regex query Whitelist fields in response Populate deep fields
mstime API response time Stack trace in Response
UI Example
CRA, Typescript, React-router, Axios, PostCSS, Tailwind. Components: Login, Home, ItemView.
Portable-react
- More details in Documentation / Features
📦 Installation
Require: MongoDB
and NodeJS v8.12.0 +
Clone this project:
git clone https://github.com/ngduc/node-rem.git your-app
…Hope you find it useful. Drop me a line below if you have questions/feedbacks.
Thanks!
Top comments (1)
Hi Duc,
Thanks for the contribution of this boilerplate repo.
Do you still use or recommend this repo in 2020?. I quickly tried the repo and i can see some BlueBird and other libraries which may be outdated in 2020. Whats your take?
Moreover, the typescript says require not found. Is this because of old typescript 3.3 is not compatible with NodeJS 10?
Regards
Nirmal