Backend Web Development with Node.js & Express ๐
Learn to build a simple backend using Node.js, Express.js, and MongoDB in this beginner-friendly tutorial.

freeCodeCamp.org
63.8K views โข Nov 17, 2025

About this video
This introductory guide teaches you how to construct a basic backend for a website using popular technologies like Node.js, Express.js, and the MongoDB NoSQL database. The tutorial covers the core components of backend development, walking you through the initial server setup, database connection, and code structure using a model, route, and controller pattern. You will learn to build practical APIs for user authentication, including password hashing, as well as full CRUD (Create, Read, Update, Delete) operations to manage data. Finally, the video demonstrates how to utilize Postman to test your server's requests and ensure your APIs are functioning correctly.
This course was developed by Shivani. She is part of Hack Club. Hack Club is a global non-profit organization that creates a community for high school students interested in coding and making things with technology.
Hack Club is free and any teenager can join. Check out their site to get stickers and learn more: https://hackclub.com/
โญ๏ธ Contents โญ๏ธ
- 00:00 Introduction & Overview
- 01:44 What is a Backend?
- 02:01 Core Components: Languages, Databases, Runtimes, Frameworks
- 04:36 Backend Architecture Flowchart
- 05:44 How Frontend Connects to Backend (APIs)
- 07:00 Prerequisites & Installing Node.js
- 08:50 Project Folder Structure
- 09:30 Project Initialization (Git & npm)
- 12:56 Setting up MongoDB Atlas Database
- 15:45 Environment Variables (.env)
- 18:36 Constants & ES Modules Setup
- 20:30 Creating the Express App (app.js)
- 25:15 Connecting Database to Server (database.js)
- 31:30 Server Entry Point (index.js)
- 39:00 Setting up Nodemon & Running the Server
- 44:00 Understanding Models & ER Diagrams
- 46:26 Creating the User Model
- 53:40 Understanding Routes
- 55:00 Setting up User Routes
- 56:23 Understanding Controllers
- 1:57:04 Coding the Register Controller
- 1:07:08 The Journey of a Request
- 1:15:48 HTTP Methods & Status Codes Explained
- 1:20:36 Introduction to Postman
- 1:22:00 Testing the Register API
- 1:25:53 Viewing Data in MongoDB Atlas
- 1:27:14 Coding the Login Controller
- 1:31:40 Hashing Passwords with Bcrypt
- 1:36:40 Comparing Passwords for Login
- 1:42:06 Testing the Login API
- 1:44:04 Coding the Logout Controller
- 1:47:40 Testing the Logout API
- 1:49:14 Intro to CRUD APIs
- 1:49:24 Creating the Post Model
- 1:53:33 Create Post API (Controller & Route)
- 2:59:52 Testing Create Post
- 2:03:09 Read All Posts API
- 2:05:54 Testing Get Posts
- 2:08:30 Update Post API
- 2:17:08 Testing Update Post
- 2:19:36 Delete Post API
- 2:23:47 Testing Delete Post
- 2:25:13 Final Commit & Conclusion
โค๏ธ Support for this channel comes from our friends at Scrimba โ the coding platform that's reinvented interactive learning: https://scrimba.com/freecodecamp
๐ Thanks to our Champion and Sponsor supporters:
๐พ Drake Milly
๐พ Ulises Moralez
๐พ Goddard Tan
๐พ David MG
๐พ Matthew Springman
๐พ Claudio
๐พ Oscar R.
๐พ jedi-or-sith
๐พ Nattira Maneerat
๐พ Justin Hual
--
Learn to code for free and get a developer job: https://www.freecodecamp.org
Read hundreds of articles on programming: https://freecodecamp.org/news
This course was developed by Shivani. She is part of Hack Club. Hack Club is a global non-profit organization that creates a community for high school students interested in coding and making things with technology.
Hack Club is free and any teenager can join. Check out their site to get stickers and learn more: https://hackclub.com/
โญ๏ธ Contents โญ๏ธ
- 00:00 Introduction & Overview
- 01:44 What is a Backend?
- 02:01 Core Components: Languages, Databases, Runtimes, Frameworks
- 04:36 Backend Architecture Flowchart
- 05:44 How Frontend Connects to Backend (APIs)
- 07:00 Prerequisites & Installing Node.js
- 08:50 Project Folder Structure
- 09:30 Project Initialization (Git & npm)
- 12:56 Setting up MongoDB Atlas Database
- 15:45 Environment Variables (.env)
- 18:36 Constants & ES Modules Setup
- 20:30 Creating the Express App (app.js)
- 25:15 Connecting Database to Server (database.js)
- 31:30 Server Entry Point (index.js)
- 39:00 Setting up Nodemon & Running the Server
- 44:00 Understanding Models & ER Diagrams
- 46:26 Creating the User Model
- 53:40 Understanding Routes
- 55:00 Setting up User Routes
- 56:23 Understanding Controllers
- 1:57:04 Coding the Register Controller
- 1:07:08 The Journey of a Request
- 1:15:48 HTTP Methods & Status Codes Explained
- 1:20:36 Introduction to Postman
- 1:22:00 Testing the Register API
- 1:25:53 Viewing Data in MongoDB Atlas
- 1:27:14 Coding the Login Controller
- 1:31:40 Hashing Passwords with Bcrypt
- 1:36:40 Comparing Passwords for Login
- 1:42:06 Testing the Login API
- 1:44:04 Coding the Logout Controller
- 1:47:40 Testing the Logout API
- 1:49:14 Intro to CRUD APIs
- 1:49:24 Creating the Post Model
- 1:53:33 Create Post API (Controller & Route)
- 2:59:52 Testing Create Post
- 2:03:09 Read All Posts API
- 2:05:54 Testing Get Posts
- 2:08:30 Update Post API
- 2:17:08 Testing Update Post
- 2:19:36 Delete Post API
- 2:23:47 Testing Delete Post
- 2:25:13 Final Commit & Conclusion
โค๏ธ Support for this channel comes from our friends at Scrimba โ the coding platform that's reinvented interactive learning: https://scrimba.com/freecodecamp
๐ Thanks to our Champion and Sponsor supporters:
๐พ Drake Milly
๐พ Ulises Moralez
๐พ Goddard Tan
๐พ David MG
๐พ Matthew Springman
๐พ Claudio
๐พ Oscar R.
๐พ jedi-or-sith
๐พ Nattira Maneerat
๐พ Justin Hual
--
Learn to code for free and get a developer job: https://www.freecodecamp.org
Read hundreds of articles on programming: https://freecodecamp.org/news
Video Information
Views
63.8K
Likes
2.5K
Duration
02:26:22
Published
Nov 17, 2025
User Reviews
4.7
(12) Related Trending Topics
LIVE TRENDSRelated trending topics. Click any trend to explore more videos.