node-mongoose-setup
node-mongoose-setup copied to clipboard
Definitive Rest Api
** Is your feature request related to a problem? Please describe. ** No
** Describe the solution you'd like ** Hello, I am looking to create the Definitive Rest Api, an api that works as much as for a small, medium or large project, one where if tomorrow you decide to change from mongodb to mysql, postgresql, or some database, it is easy to change, and not having to change hundreds of files for a database migration, a stateless node project, so you can scale vertically or horizontally, caching to make the api faster if there are many requests at the same time, use a request limiter to avoid DOS attacks, and generate documentation with swagger ui.
** Describe alternatives you've considered ** Use: Redis - https://www.npmjs.com/package/redis express-redis-cache - https://www.npmjs.com/package/express-redis-cache node-rate-limiter-flexible - https://www.npmjs.com/package/rate-limiter-flexible express-rate-limit - https://www.npmjs.com/package/express-rate-limit morgan - https://www.npmjs.com/package/morgan swagger ui - https://www.npmjs.com/package/swagger-ui
** Additional context ** I have been researching all over the internet for more than a month, gathering several projects, one of the most important for me is this: https://dev.to/mvoloskov/scalable-architecture-without-magic-and-how-to-build -it-if-youre-not-google-336a, my dream is to create a "Cheetah" adaptable to any project that is presented in the future for any developer, a base where you only have to clone the project and you will have everything ready in no time weather.
And here is a project on how to implement it, I plan to merge the two projects to achieve it, even though I still have many more things to investigate.
https://github.com/mvoloskov/cheetah
also an example of how to implement api-rate-limit
https://akashrajpurohit.com/blog/api-rate-limit-in-nodejs-and-expressjs/
I don't have much experience in programming, I've only been 5 years old and I feel like I don't know anything every time I discover something new, I will try to implement everything I have written and if I succeed, I will make a pull request, or create another repository, and thus create the final rest api, thanks for the basis of this project.
Good to hear from you. I appreciate your interest. Basically the structure here in this repo is just an idea of my understanding. I've evolved this one in these 4 - 5 months a lot. Lot of features and things are more organised. I didn't have much time to implement in this repo. I'm going to implement very soon. If you're interested contributing then we can make things possible which are not already there. My goal was to create a setup which will be just plug and play. I've created automated nested routing with custom url pattern and auto url generation etc. I'd love to have contribution like yours. :)