4.79 out of 5
4.79
2751 reviews on Udemy

Node.js API Masterclass With Express & MongoDB

Create a real world backend for a bootcamp directory app
Instructor:
Brad Traversy
14,186 students enrolled
English [Auto]
Real World Backend RESTful API For Bootcamp Directory App
HTTP Fundamentals (Req/Res Cycle, Status Codes, etc)
Advanced Mongoose Queries
JWT/Cookie Authentication
Express & Mongoose Middleware (Geocoding, Auth, Error Handling, etc)
API Security (NoSQL injection, XSS protection, Rate Limiting)
API Documentation & Deployment

This is a project based course where we build an extensive, in-depth backend API for DevCamper, a bootcamp directory app. We will start from scratch and end up with a professional deployed API with documentation. We will dive deep into Node, Express and MongoDB. Here is some of what you will learn in this course and project…

  • HTTP Essentials

  • Postman Client

  • RESTful APIs

  • Express Framework

  • Routing & Controller Methods

  • MongoDB Atlas & Compass

  • Mongoose ODM

  • Advanced Query (Pagination, filter, etc)

  • Models & Relationships

  • Middleware (Express & Mongoose)

  • MongoDB Geospatial Index / GeoJSON

  • Geocoding

  • Custom Error Handling

  • User Roles & Permissions

  • Aggregation

  • Photo Upload

  • Authentication With JWT & Cookies

  • Emailing Password Reset Tokens

  • Custom Database Seeder Using JSON Files

  • Password & Token Hashing

  • Security: NoSQL Injection, XSS, etc

  • Creating Documentation

  • Deployment With PM2, NGINX, SSL

Welcome To The Course

1
Course Introduction
2
A Look At The Project
3
Optional Node.js Beginner Crash Course
4
Environment Setup

HTTP Intro - Headers, Body, Status Codes, etc

1
HTTP & the Node Http Module
2
Installing Nodemon
3
Responding With Data
4
HTTP Status Codes
5
Sending Data To The Server
6
HTTP Methods & RESTful APIs

Starting Our DevCamper Project

1
Project Specs & Resources
2
Basic Express Server, dotenv & Git
3
Creating Routes & Responses In Express
4
Using The Express Router
5
Creating Controller Methods
6
Intro To Middleware
7
Postman Environment & Collections

Getting Started With MongoDB & Bootcamps Resource

1
MongoDB Atlas & Compass Setup
2
Connecting To The Database With Mongoose
3
Colors In The Console
4
Creating Our First Model
5
Create Bootcamp - POST
6
Fetching Bootcamps - GET
7
Updating & Deleting Bootcamps - PUT & DELETE

Custom Error Handling & Mongoose Middleware

1
Error Handler Middleware
2
Custom ErrorResponse Class
3
Mongoose Error Handling [1]
4
Mongoose Error Handling [2]
5
Async/Await Middleware
6
Mongoose Middleware & Slugify
7
GeoJSON Location & Geocoder Hook - MapQuest API

Mongoose Advanced Querying & Relationships

1
Database Seeder For Bootcamps
2
Geospatial Query - Get Bootcamps Within Radius
3
Advanced Filtering
4
Select & Sorting
5
Adding Pagination
6
Course Model & Seeding
7
Course Routes & Controller
8
Populate, Virtuals & Cascade Delete
9
Single Course & Add Course
10
Update & Delete Course
11
Aggregate - Calculating The Average Course Cost
12
Photo Upload For Bootcamp
13
Advanced Results Middleware

Authentication, Users & Permissions - Part 1

1
User Model
2
User Register & Encrypting Passwords
3
Sign & Get JSON Web Token
4
User Login
5
Sending JWT In a Cookie
6
Auth Protect Middleware
7
Storing The Token In Postman
8
Role Authorization

Authentication, Users & Permissions - Part 2

1
Bootcamp & User Relationship
2
Bootcamp Ownership
3
Course Ownership
4
Forgot Password - Generate Token
5
Forgot Password - Send Email
6
Reset Password
7
Update User Details
8
Admin Users CRUD

Bootcamp Reviews & Ratings

1
Review Model & Get Reviews
2
Get Single Review & Update Seeder
3
Add Review For Bootcamp
4
Aggregate - Calculate Average Rating
5
Update & Delete Reviews

API Security

1
Logout To Clear Token Cookie
2
Prevent NoSQL Injection & Sanitize Data
3
XSS Protection & Security Headers
4
Rate Limiting, HPP & CORS

Documentation & Deploy

1
Documentation With Postman & Docgen
2
Digital Ocean Droplet & Server Log In
3
Prepare & Push To Github
4
Clone Repo On Server
5
PM2 Process Manager Setup
6
NGINX Reverse Proxy Setup
7
Domain, SSL & Wrap Up
You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.8
4.8 out of 5
2751 Ratings

Detailed Rating

Stars 5
2097
Stars 4
566
Stars 3
69
Stars 2
5
Stars 1
12
ae97431a5377ace44bf31a065f426bf7
30-Day Money-Back Guarantee

Includes

12 hours on-demand video
1 article
Full lifetime access
Access on mobile and TV
Certificate of Completion