Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sdthaker/node.js-mvc-app
A simple MVC app developed using node.js.
https://github.com/sdthaker/node.js-mvc-app
bcryptjs dotenv ejs-templates express-session expressjs mongodb mongoose passport passport-local
Last synced: about 1 month ago
JSON representation
A simple MVC app developed using node.js.
- Host: GitHub
- URL: https://github.com/sdthaker/node.js-mvc-app
- Owner: sdthaker
- Created: 2021-09-19T16:11:48.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2021-09-19T16:22:32.000Z (over 3 years ago)
- Last Synced: 2024-07-30T18:10:49.391Z (5 months ago)
- Topics: bcryptjs, dotenv, ejs-templates, express-session, expressjs, mongodb, mongoose, passport, passport-local
- Language: EJS
- Homepage:
- Size: 44.9 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Node.js MVC App
Introducing popular architectural pattern Model-View-Controller (MVC) by building and structuring an application in Node.js using MVC.
## What is Model-View-Controller?
MVC is simply a design or architectural pattern used in software engineering. While this isn’t a hard rule, but this pattern helps developers focus on a particular aspect of their application, one step at a time.The main goal of MVC is to split large applications into specific sections that have their own individual purpose.
It also allows developers to logically structure applications in a secure way, which is portrayed by this application. But first, let’s break down what each aspect of the pattern provides.
### Model
As the name implies, a model is a design or structure. In the case of MVC, the model determines how a database is structured, defining a section of the application that interacts with the database. This is where we define the properties of a user that will be store in our database.The controller accesses the database through the model. You could say that the model is the heart of the application.
### View
The view is where end users interact within the application. Simply put, this is where all the HTML template files go.### Controller
The controller interacts with the model and serves the response and functionality to the view. When an end user makes a request, it’s sent to the controller which interacts with the database.You can think of the controller as a waiter in a restaurant that handles customers’ orders, which in this case is the view. The waiter then goes to the kitchen, which is the model/database, and gets food to serve the customers, which is the controller handling the request.