HOW TO STRUCTURE YOUR BACKEND CODE IN NODE.JS(express.js).
[with explanation]
π
βββ π app.js
βββ π bin
βββ π config
βββ π controllers
β βββ π customer.js
β βββ π product.js
β βββ ...
βββ π middleware
β βββ π auth.js
β βββ π logger.js
β βββ ...
βββ π models
β βββ π customer.js
β βββ π Product.js
β βββ ...
βββ π routes
β βββ π api.js
β βββ π auth.js
β βββ ...
βββ π public
β βββ π css
β βββ π js
β βββ π images
β βββ ...
βββ π views
β βββ π index.ejs
β βββ π product.ejs
β βββ ...
βββ π tests
β βββ π unit
β βββ π integration
β βββ π e2e
β βββ ...
βββ π utils
β βββ π validation.js
β βββ π helpers.js
β βββ ...
βββ π node_modules
Here's a brief explanation:
app.js
It's like the control centre of your web application. It's where you set up and manage everything.
bin
Think of this as a place for starting your web server. It's where you have scripts that make your website work.
config
These are like settings for your website, such as where your database is or how your website should behave.
controllers
This is where you put the brains of your website explains the name controllers. Each file here handles a different part of your site, like customer stuff or product stuff.
middleware
Imagine these as helpers that help your website do things like checking if you're logged in or keeping a record of what people do on your site.
models
This is where you describe what your data looks like. If your website is a store, this is where you say what a product is or what a customer is.
routes
These are like the paths to different parts of the website. If the website is a city, these are the streets and highways.
public
Think of this as your storage room for things everyone can see, like images, styles, and scripts.
views
If your website is like a book, these are the pages. This is where you put together what people see on the screen.
tests
These are like exams for your website to make sure it works correctly. You create different kinds of tests to check different parts of your site.
utils
These are like handy tools you use to make your website better, like checking if someone's email is valid or formatting dates nicely.
node_modules
This is like your toolbox filled with tools (libraries and code) that you use to build your website. It's automatically filled with things your project needs.
This organized structure helps you build and manage your website in a neat and organised way, making it easier to understand and work on, especially when your project gets bigger and more complex and you have to make changes very often.
I am not saying that this is the only or the best way, this is what I usually follow and thought about sharing it.
Maybe sinking was the only option. Indeed, it is a dark dark day. But it's time we got FIFA on our side and clear the mess we're in. This doesn't have to be the end of something, but rather a chance to start afresh. The serious misgovernance issues have to be dealt with.
Very Hypocritical of me to speak about optimization and show off a very poorly optimised web pageπ
It was my first Project after starting Web Dev last year, thoroughly enjoyed it.
Here it is with a new patch of paintπ.
#webdev#Web3#Developer#webdevelopment
Was trying to study DSA for college placements in the last few months , I learnt how important it is for your code to be well optimisedπ
Was good to be back with development today as I updated my last year's Prediction Page for the new Football Season
https://t.co/41befVGXAI
Looking for a remote Web Developer job?
Here is the list of websites to find them:
πΆ remotive .io
πΆ remoteleads .io
πΆ angel .co/jobs
πΆ justremote .co
πΆ javascriptjob .xyz
πΆ flexjobs .com
πΆ remoteok .io
πΆ stackoverflow .com/jobs
πΆ producthunt .com/jobs
πΆ jobs .github
The best productivity system:
1. 4 hours of deep work
2. 30 mins of walk
3. 30 mins of mediation / exercise
4. 30 mins of reading
5. 30 mins of writing
6. 7+ hours of sleep
The more you invest in these, the more successful you become.