NodeJS: Beginner to Pro - APIs for Food Delivery & Ecommerce

Build simple to complex REST APIs for E-commerce & Food Delivery platforms using NodeJS (Typescript), ExpressJS, MongoDB

4.74 (59 reviews)
Udemy
platform
English
language
Programming Languages
category
instructor
440
students
28 hours
content
May 2023
last update
$79.99
regular price

What you will learn

Work with one of the most in-demand web development programming languages

Learn Nodejs (Typescript) with MongoDB from Basics to Advanced with proper & optimised coding file structure

Learn Nodejs by building real-world applications with Node JS, Express, MongoDB, REDIS and more!

Learn to build simple to complex REST APIs for Food Delivery & Ecommerce Platforms

Build modern, fast and scalable server-side web applications with NodeJS, ExpressJS, MongoDB

Using Redis for Blacklisting RefreshTokens

Learn to Send Mails using SendGrid

Learn to Deploy Nodejs to Heroku

Clean Coding Best Approaches

Using POSTMAN (as frontend) for testing APIs & saving in an organised manner

Integrate Stripe Payment Gateway

Export Data to ExcelSheet

Learn about Clusters - Boost NodeJS Performance & Scalability

Learn about different Schema type Options & Virtual fields

Understand & Create CRONJOBs

Description

Join the most comprehensive Node.js course on Udemy and learn NodeJS in a practical way!


Node.js is probably THE most popular and modern server-side programming language you can dive into these days!

Node.js developers are in high demand. Not to mention its applications in build workflows for projects of all sizes.

This course will teach you all of that! From scratch with zero prior knowledge assumed. Though if you do bring some knowledge, you'll of course be able to quickly jump into the course modules that are most interesting to you.

Here's what you'll learn in this course:

  • Introduction to Nodejs, expressjs & mongoDB

  • Setup Nodejs project & deep dive into its basics

  • User Authentication

  • Getting Started with Food Delivery NodeJS App

  • Implementing Dotenv file & a few Optimizations

  • Adding Pagination

  • Implementing Refresh Token for Strong JWT Authentication

  • Blacklisting Refresh Tokens using Redis & applying few optimisations

  • Fixing Timezone & error messages for no records available in Nodejs

  • Indexing in MongoDB

  • Update Profile Picture & Fix some Security Loopholes

  • Deploy Nodejs App for production to Heroku (It's Paid not free anymore)

  • E-Commerce NodeJS App - Transform from Food Delivery App with appropriate changes

  • Integrate Stripe Payment Gateway

  • Some Important Bonus Videos (Export Data to ExcelSheet, Clusters - Boost NodeJS Performance & Scalability, Learn about different Schema type Options & Virtual field etc.)

  • Understand & Create CRONJOBs

Does this look like a lot of content? It certainly is!

This is not a short course but it is the "Complete Guide" on Node.js after all. We'll dive into a lot of topics and we'll not just scratch the surface.

We'll also not just walk through boring theory and some slides. Instead, we'll build 2 major projects: REST APIs for Food Delivery & E-commerce platforms

All topics and features of the course will be shown and used in these projects and you'll therefore learn about them in a realistic environment.


Is this course for you?

If you got no Node.js experience, you'll love this course because it starts with zero knowledge assumed. It's the perfect course to become a Node.js developer.

If you got basic Node.js experience, this course is also a perfect match because you can go through the basic modules quickly and you'll benefit from all the deep dives and advanced topics the course covers.

Are you an advanced Node.js user? Check the curriculum then. Maybe you found no other course that shows how to use Node.js with Typescript along with best coding approaches and flexible easy to reuse structure.


Prerequisites

  • NO Node.js knowledge is required at all!

  • NO other programming language knowledge (besides JavaScript/Typescript) is great to have but not a mandatory one.

  • Basic JavaScript/Typescript knowledge is assumed though - you should at least be willing to pick it up whilst going through the course. A JS refresher module exists to bring you up to the latest syntax quickly

  • General knowledge of how the web works is recommended but not a must-have

Content

Introduction to Nodejs, expressjs & mongoDB

Module Introduction
Join our Discord Community
Learn more from my Youtube Channel
What is Nodejs
Nodejs Architecture
How Node Works
What is Expressjs
What is MongoDB
Install Nodejs & MongoDB
Understanding different request types in a server

Setup Nodejs project & deep dive into its basics

Module Introduction
Install & Setup Visual Studio Code (Code Editor)
Creating new Nodejs project & setting it up (for typescript)
Use of Promise async wait try catch
Use of Spread Operators
Understanding Routing Basics
Understanding Middleware Basics
Connecting to MongoDB
Handling Environment Variables
Structuring Nodejs Project
Error Handling
Accessing Request Variables
Basics of schema (models)
Implementing request validation & overview of http error status code
Attached Source Code

User Authentication

Module Introduction
Creating a User with POSTMAN
Understanding CORS & implement in NodeJS App
Refractor code
Preparing for User Email Verification
Send Verification Emails using SendGrid & Gmail and check for unique email
Resend Verification Email
Encrypting password using bcrypt
What is JWT & how it works
Implementing JWT for User Authentication
Setup Auth Middleware for Backend APIs
Understand Auth Workflow & Optimise OTP related issues
Creating APIs for Reset Password functionality & Testing in POSTMAN
Optimising Code
Fetch & Update User Profile
Fixing Minor Bugs
Attached Source Code

Getting Started with Food Delivery App

Module Introduction
Understanding Food Delivery App Workflow & Create an Admin
File Upload using Multer for Creating Banner Images
Refractor code
Insert Cities in Mongodb Database
Fetch Cities, Insert Restaurant, Category documents in MongoDB
Using Geospatial Queries to Fetch & Search Nearby Restaurants
Add Restaurant Menu Items (also understanding mongodb populate() & query project
Fetch Restaurant Menu Items
Perform CRUD Operations for User Addresses
Place order & fetch user orders
Attached Source Code

Implementing Dotenv file & a few Optimizations

Module Introduction
Make Banner Clickable
Implementing Dotenv file
Attached Source Code

Adding Pagination

Module Introduction
Implementing Pagination in User Addresses
Implementing Pagination in User Orders list
Implementing Pagination in Restaurants list
Attached Source Code

Implementing Refresh Token for Strong JWT Authentication

Module Introduction
Create Refresh Token & also learn to generate random secret keys
Auto-generate new Access & Refresh Tokens when Access token expires
Attached Source Code

Blacklisting Refresh Tokens using Redis & applying few optimisations

Module Introduction
Understanding why blacklist RefreshTokens needed & Setting up Redis in MacOS
Setting up Redis in Windows
Setup Redis with Nodejs & Connect it with Local Server in your System
Connecting to Redis Enterprise (Server) for free with Nodejs
Optimising UserController in Nodejs to send only required User
Blacklisting RefreshToken using Redis
Clear User Refresh Token from Redis database on Logout
Brief on how to manage RefreshToken in Redis if same account in multiple device
Attached Source Code

Fixing Timezone & error messages for no records available in Nodejs

Module Introduction
Fixing Current Date Timezone & Port Number issue in Nodejs
Optimising Restaurant Controller for no records found
Optimising OrderController for no records found
Optimising AddressController for no records found
Attached Source Code

Indexing in MongoDB

Module Introduction
What is MongoDB Indexing
Understanding types of Indexing & a brief about various operators
Using geoNear(for distance), nearSphere & geoWithin in Restaurant
Attached Source Code

Update Profile Picture & Fix some Security Loopholes

Module Introduction
Applying Strict Role based Restrictions
Implementing Edit Profile picture
Attached Source Code

Deploy Nodejs App for production to Heroku (It's Paid not free anymore)

Module Introduction
Horizontal vs Vertical Scaling
Understanding MongoDB Replication
Deploying Nodejs App to Heroku
Checking Files in Heroku & Understanding about Heroku filesystem problem
How to do Load Testing?
Attached Source Code

E-Commerce App - Transform from Food Delivery App with appropriate changes

Module Introduction
Setup NodeJS App for E-commerce
Register or Login User via Phone Number
OTP based Login
Refractor Code
Update Customer Profile
Create & Fetch Category as an Admin
Add & fetch Sub Categories
Add & fetch APIs for Store with Owner
Add Product
Fetch Products
Add to Cart & fetch it
Place & fetch orders
Refractor Code
Attached Source Code

Integrate Stripe Payment Gateway

Module Introduction
Generate Stripe Keys
Integrate Stripe API in NodeJS
Make payment using Stripe Payment Gateway
Attached Source Code

Some Important Bonus Videos

Module Introduction
Regular Expression to validate proper email address in Model Schema
Clusters - Boost NodeJS Performance & Scalability
Export Data to ExcelSheet
Virtual field
Attached Source Code

Understand & create Cronjobs

Module Introduction
What is Cronjob?
Creating a Cronjob
Attached Source Code

Screenshots

NodeJS: Beginner to Pro - APIs for Food Delivery & Ecommerce - Screenshot_01NodeJS: Beginner to Pro - APIs for Food Delivery & Ecommerce - Screenshot_02NodeJS: Beginner to Pro - APIs for Food Delivery & Ecommerce - Screenshot_03NodeJS: Beginner to Pro - APIs for Food Delivery & Ecommerce - Screenshot_04

Reviews

A
November 23, 2023
The explanation is very detailed. Beginners can refer to google for any additional doubts and they will understand more clearly.
Diya
October 3, 2023
The educator teaches everything from basics. I could connect to his teachings and has helped me a lot. Everything is made clear and helps for anything when asked.
Monica
August 16, 2023
Just started Explanations are not clear for the first awaited concept on Promise. I followed the video from the start and when I started off with the first concept that is Promise async await try catch. The explanations are not clear when it comes to the concept

Charts

Price

NodeJS: Beginner to Pro - APIs for Food Delivery & Ecommerce - Price chart

Rating

NodeJS: Beginner to Pro - APIs for Food Delivery & Ecommerce - Ratings chart

Enrollment distribution

NodeJS: Beginner to Pro - APIs for Food Delivery & Ecommerce - Distribution chart

Related Topics

5294404
udemy ID
4/26/2023
course created date
5/15/2023
course indexed date
ANUBHAVJAIN
course submited by