Skip to content

It is a Server Side Rendered Website developed in Node.js with MongoDB as a database. The Application is structured following MVC pattern. I developed this Application to practice Node, Express.js, and MongoDB. In this Application the main focus was on backend

Notifications You must be signed in to change notification settings

Aizaz-Ahmad/NodeSchool

Repository files navigation

NodeSchool

It is a Server Side Rendered Website developed in Node.js with MongoDB as a database. The Application is structured following MVC pattern. I developed this Application to practice Node, Express.js, and MongoDB. In this Application the main focus was on backend

📼 Demo


Test this Application out by going to the link: http://nodeschool0.herokuapp.com/

OR

Check out this Video

NODESCHOOL-DEMO

🧰 Technologies Used


  • HTML, CSS, JS
  • BootStrap
  • Handlebars
  • Node.js with Express.js
  • MongoDB

Modules Covered

  {
    "bcrypt": "^5.0.1", // For hashing the password before saving to DB
    "connect-mongodb-session": "^2.4.1", // For using MongoDB as a store to save session data
    "dotenv": "^10.0.0", // For using environmental variables from a .env file using process.env
    "express": "^4.17.1", // For Setting up the server
    "express-fileupload": "^1.2.1", // For saving images that users uploaded while filling out the application
    "express-handlebars": "^5.3.2", // For using Handlebars with Express.js
    "express-session": "^1.17.2", // For mantaining sessions and storing session's data
    "mongodb": "^4.0.0", // MongoDB Node.js Driver for connecting, sending queries and retreiving result.
    "nodemailer": "^6.6.3" // For sending Email with verification Code to the Email Address of the user
  }

🧑‍💻 Devlopment Setup


To run this website locally

  1. Clone this repository or simply download code ZIP folder. To clone this repo use the following command.

        https://github.com/Aizaz-Ahmad/NodeSchool.git
  2. npm install to install all required Node Modules
  3. Inside your MongoDB Atlas Cluster, Create a new Database with the name of 'node_school'. After this import the data into the Collections by using JSON files inside data folder.
  4. For using Emailing Functioanlity replace your Gmail and Password with Placeholder values inside MailUtility.js!
  5. Replace your MongoDB URI with placeholder inside .env file.
  6. node index.js to run the Server

If you liked the repo then Give it a star ⭐

About

It is a Server Side Rendered Website developed in Node.js with MongoDB as a database. The Application is structured following MVC pattern. I developed this Application to practice Node, Express.js, and MongoDB. In this Application the main focus was on backend

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published