REPOSITORY OVERVIEWLive repository statistics
★ 572Stars
⑂ 139Forks
◯ 3Open issues
◉ 572Watchers
80/100
OPENREPOHUB HEALTH SIGNALStrong signals
A transparent discovery signal based on current public GitHub metadata.
Recent activity35% weight
90 Community adoption25% weight
55 Maintenance state20% weight
100 License clarity10% weight
100 Project information10% weight
51 This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
README preview
NodeJS Project Structure
Recently I have started working on a new project and the issue that I faced was spending a lot of time building the project structure based on the best practices, especially with JavaScript/NodeJS that has a lot of approaches. I couldn't find any place that wraps the best practices into a single project, so I decided to make it on my own.
In this repository, I don't aim to provide any optimal solution as each project have its own necessity but to help anyone that is starting with a NodeJS project and can't find any inspiration on how to start building the project to take this project as the starting point.
Some of the good practices followed in this repository:
async & await support
- WinstonJS logger implementation
- Error Handling
- Sequelize Support
- Basic Joi Validation
- Open API specification implemented through swagger-jsdocs and swagger-ui
- JWT implementation
- Enviroment variables to hold configuration values .env file
- OOP (Object-Oriented Programming)
- I followed airbnb coding standard with eslint, to help keep things into prespective.
How to start the project:
- First, you clone the project by using the following command:
git clone https://github.com/AlaaMezian/NodeJs-backend-structure.git
- Install node version 8.11.0 or use nvm to downgrade your node version.
- Delete the existing
package.lock.json and run npm install
- Then you create a postgres database named iLrn with the following credentials:
username: postgres
password: password
- Run the migration using the following command:
npx sequelize-cli db:migrate
- Lastly, you run
npm start
Future improvements utilize component based structure.
Please feel free to :star: and happy programming :v:
ALGORITHMICALLY RELATEDSimilar Open-Source Projects
Selected from shared topics, language and repository description—not editorial ratings.
30 days of JavaScript programming challenge is a step-by-step guide to learn JavaScript programming language in 30 days. This challenge may take more than 100 days, please just follow your own pace. These videos may help too: https://www.youtube.com/channel/UC7PNRuno1rzYPb1xLa4yktw
86/100 healthRecently updatedPopularActive repository
JavaScriptNo license#30daysofjavascript#angular#challenge#css
⑂ 10.5K forks◯ 368 issuesUpdated today
:school_satchel: :rocket: :tada: A list of interview questions. This repository is everything you need to prepare for your technical interview.
91/100 healthRecently updatedActive repository
MIT#angularjs#asp#cpp#csharp
⑂ 549 forks◯ 17 issuesUpdated 3 days ago