NodeJS - The Complete Web Developer Bootcamp 2023

Build Real World Web Apps Using Node, Express, PostgreSQL, MongoDB and more...

4.50 (300 reviews)
Udemy
platform
English
language
Web Development
category
instructor
NodeJS - The Complete Web Developer Bootcamp 2023
2,703
students
14.5 hours
content
Oct 2022
last update
$79.99
regular price

What you will learn

Learn to create NodeJS applications

Integrate Node ExpressJS apps with PostgreSQL and MongoDB

Learn ORM and SQL to perform CRUD operations

Implement server side pages using Mustache template engine

Develop JSON Web API and consume it in a JavaScript application

Build 3 real world projects from start to finish

Why take this course?

I have been training developers in one form or the other since 2005. At present I am the lead instructor at DigitalCrafts bootcamp where I teach full stack web development. This course is a result of 1000s of hours of training over the course of several years in which I trained more than 100 developers.  Now those developers are working for companies like Apple, LinkedIn, Chase etc.


Requirements

  • Basic understanding of how the web works is recommended but not a must-have

  • Understanding of JavaScript programming language is recommended

  • No NodeJS knowledge is required

Description

According to the latest StackOverFlow survey NodeJS is the most popular framework in software development. NodeJS is in high demand and JavaScript developers who have NodeJS in their tool-belt earns high salary. This course is designed to teach you all the important parts of the NodeJS framework by building real world, data driven applications. After completing this course you will be ready to build full stack web  applications using NodeJS and JavaScript.

Here is the outline of this course:


  • Understanding NodeJS and Node Package Manager

  • Installing and Running ExpressJS

  • Understanding Routing

  • Passing QueryString, Parameters and JSON

  • Posting Data in Express

  • Understanding Server Side Pages

  • Building Template Server Side Pages Using Mustache

  • Creating Reusable Components Using Express Partials

  • Consuming Static Resources

  • Developing Express Router

  • Understanding and Implementing Middleware

  • Integrating Session for ExpressJS Apps

  • Debugging Node

  • Setting Up PostgreSQL Database

  • Learning Basic SQL Commands

  • Performing CRUD Operations Using pg-promise for PostgreSQL database

  • Encrypting and Persisting Secure Data Using brcrypt

  • Toggling Menu Options based on the User Login Status

  • Deployment to Heroku

  • Understanding Object Relational Mapping

  • Installing and Configuring Sequelize

  • Performing CRUD Operations Using Sequelize

  • Implementing One to Many Relationships in Sequelize

  • Hosting PostgreSQL Database on ElephantSQL

  • Understanding Document Databases

  • Implementing JSON Web API Using ExpressJS

  • Installing and Running MongoDB Database Server

  • Performing CRUD Operations Using MongoDB


Projects

As a lead instructor at one of the top bootcamps I know that the best way to learn a new technology is utilizing your skills in a real world project. For this reason this course targets multiple projects to enhance your learning experience.


News App

In this app you will learn how to use create server side pages using Mustache template engine. You will build a login and registration screen and eve customize the user’s page based on their credentials. This app integrates with PostgreSQL database using pg-promise library. Finally, you will learn how to deploy your app to Heroku server.


Sell Your Stuff

In this app you will learn how to create an ExpressJS website which allows the user’s to list their products for sale. You will learn how to integrate Sequelize ORM with your Node application. The project also covers how to upload images from your machine to your own server. Just like the previous app you will also implementing login and registration of the user.


Grocery App

In this app you will learn how to create both the client and the server. The client will be implemented using the vanilla HTML and JavaScript and the server will be implementing using ExpressJS and MongoDB (Document Database). You will learn how to persist documents as well as nested documents in the MongoDB database.


Is this course for you?

If you have no NodeJS experience then you are going to enjoy this course. NodeJS is a very high in demand framework and after going through this course you can use your new skills to become a full stack web developer.

If you have novice NodeJS experience then about accessing PostgreSQL and MongoDB databases with pg-promise, Sequelize and mongoose.


Prerequisites

  • No knowledge of NodeJS is required

  • Understanding of HTML and CSS is required

  • Existing knowledge of JavaScript is recommended

Content

Introduction

Introduction
Exercise Files

Hello Node

What is Node?
What is NPM?
Installing Node
Writing your first Node App
Rendering HTML Pages Using Node

Node Express

What is Express?
Running Express Server
Installing Nodemon
Hello Express

Express Routing

What are Routes?
Route Basics
Parameters
QueryString
JSON

HTTP Post

What is a POST Request?
Implementing Post Route in Express
Parsing Body Using BodyParser

Server Side Pages

What are Server Side Pages?
Server Side Pages Frameworks
Node Express Templates Engines

Template Pages Using Mustache

Setting Up Mustache
Passing Data to Mustache Pages
Displaying List in Mustache Pages
Implementing Conditions in Mustache Pages
Posting Data through Mustache Pages
Parsing Body Using Body Parser

Mustache Partials

What are Partials?
Registering Partials
Rendering Partials

Static Resources

What are Static Files?
Setting Up Static Resources

Express Router and Middleware

What is Express Router?
Implementing Express Router
What is Middleware?
Implementing your Custom Middleware

Express Session

What is Session?
Initializing Session
Populating and Accessing Session Values
Implementing Authorization Using Session and Middleware

Debugging Node

What is Debugging?
Launching Node Debugger in Chrome

Setting Up PostgreSQL Database

Installing PostgreSQL Database
Installing Postico
Creating Database and Tables
Basic SQL Commands

PostgreSQL with pg-promise

What is pg-promise?
Connecting to PostgreSQL Using pg-promise
Inserting Record Using pg-promise
Retrieving Records Using pg-promise
Update Record Using pg-promise
Deleting Record Using pg-promise

User Registration and Login (News App)

What we will be building?
A Note About Designing the User Interface
Setting Up the Node Project
Setting Up Database Tables
Setting Up Mustache Engine and Bootstrap
Implementing User Registration
Persisting User in the Database
Encrypting Password Using Bcrypt
Authenticating the User
Adding Session to the News App
Implementing Partials

Performing CRUD (Create Read Update Delete) Operations (News App)

Creating New Articles
Retrieving List of Articles for User
Updating Articles
Deleting Articles
Adding CSS Static Resources
View All Articles

Securing Routes, Menu Options and Refactoring (News App)

Implementing Express Routers
Protecting Routes Using Middleware
Toggling Menu Options Using Response Locals
Implementing Logout
Async and Await
Async and Await Resources

Deployment (News App)

Deployment Options
Setting Up and Deploying Node Project to Heroku
Configuring PostgresSQL Database on Heroku
Generating SQL Using pg_dump Command Line Tool
Running the Script on the Server
Visiting the App Live on Heroku Server

Object Relational Mapping

What is an ORM?
A Look at Different ORM Frameworks
ORM Frameworks in JavaScript

Sequelize

Installing Sequelize
Understanding Sequelize Configurations
Sequelize CLI Commands
Creating Models Using Sequelize CLI
Saving Models
Retrieving List of Records
Updating Record
Deleting Record

User Registration and Login (Sell Your Stuff)

What we will be building?
A Note About User Interface
Setting Up the Node Project
Configure Mustache Pages and Partials
Implementing Header, Footer and Menu Using Partials
Setting Up Registration and Login Mustache Pages
Configure ElephantSQL Account
Initialize Sequelize
Implementing User Registration
Encrypting and Persisting Passwords
Implementing User Login
Refactoring Code Using React Routers

Managing Products (Sell Your Stuff)

Designing the Add Product Page
Uploading File to Server Folder
Generating Unique Names for Uploaded Files
Displaying the Uploaded Product Image
Creating the Product Model Using Sequelize
Implementing Migration to Add Foreign Key Constraint
Adding Product Info to the Database Using Sequelize
Retrieving All the User Products
Deleting the Product
Updating the Product Part 1
Updating the Product Part 2

Managing Product Comments (Sell Your Stuff)

Displaying All Products
Creating the Product Details Screen
Adding Comment Model Through Migration
Saving Comment to the Database
Adding hasMany Relationship Between Product and Comment
Viewing All Comments for a Product
Adding belongsTo Relationship Between Comment and Post

Authorization and Menu Toggle (Sell Your Stuff)

Updating the Menu
Protected Routes Using Middleware
Toggling Menu Options Using Response Locals
Implementing Logout

Getting Started with MongoDB Database

What is a Document Database?
Types of Document Databases
Installing and Running MongoDB
Article - Installing and Running MongoDb Server

Performing CRUD Operations for MongoDB Database

What is Mongoose?
Connecting to MongoDB Database Using Mongoose
Creating the Schema and the Model
Inserting Data to the MongoDB Database
Retrieving All Records from MongoDB Database
Updating Record in MongoDB Database
Deleting Record in MongoDB Database
Installing and Running MongoUI

Building a Shopping List App Using MongoDB and Mongoose

What we will be building?
A Note about User Interface
Configuring the Project and Installing Packages
Connecting Server to the MongoDB Database
Implementing Models for ShoppingList and GroceryItem
Creating a new Shopping List
Saving Shopping List Using User Interface
Retrieving Shopping Lists
Implementing API to Add Grocery Item
Adding Grocery Item to Shopping List Using User Interface
Displaying Grocery Items of Selected Shopping List
Displaying the Shopping List Name and Empty Grocery Items Message
Deleting Grocery Items from a Shopping List

Screenshots

NodeJS - The Complete Web Developer Bootcamp 2023 - Screenshot_01NodeJS - The Complete Web Developer Bootcamp 2023 - Screenshot_02NodeJS - The Complete Web Developer Bootcamp 2023 - Screenshot_03NodeJS - The Complete Web Developer Bootcamp 2023 - Screenshot_04

Our review

🧵 **Course Overview:** - **Global Rating:** 4.46/5.0 - **Recent Reviews Summary:** 1. **Pros:** - Step-by-step guidance for building web applications with NodeJS backend, PostgreSQL, and MongoDB. - Short, concise video lessons that encourage continuous work and practice. - Clear and in-depth explanations provided by the instructor, Mohammad Azam. - Comprehensive coverage of both SQL (PostgreSQL) and NoSQL (MongoDB) stacks. - The course is considered very informative and easy to follow for beginners. 2. **Cons:** - Some tools used in the course, like Postico, are only available on MacOS, which could be a limitation for Windows or Linux users who must find alternatives. - A few reviews suggest that more explanation on HTTP fundamentals and alternative methods could be beneficial. - The course requires familiarity with PostgreSQL, as it is used heavily throughout the course, even if you are not using a Mac. - Occasional need to update the code examples due to deprecation or version changes in NodeJS. - Some reviewers experienced issues with code not running as expected, which may cause frustration and affect learning confidence. - Resources and URLs for downloading materials would be helpful for use on different machines. **Additional Considerations:** - The course is considered a great match for understanding Node.js concepts and the pace of the lectures is well-received by learners. - Projects included in the course are practical and help reinforce the concepts taught. - Some reviews suggest updating the course content to align with the current version of NodeJS and its dependencies. - Despite some limitations, the course maintains a high recommendation from users, particularly for those new to Node.js development. **User Testimonials:** - Many users praise the course for its clarity and practical approach, especially for intermediate web development techniques. - The instructor's teaching voice and approach are commended for being just right in pace and content delivery. - Some users recommend ensuring that all dependencies are up to date to avoid compatibility issues with the code examples provided. **Conclusion:** This course is highly regarded for its ability to teach NodeJS, Express, PostgreSQL, and MongoDB through clear and practical instruction. It's particularly beneficial for beginners and those looking to deepen their understanding of intermediate web development concepts. While there are some limitations, such as compatibility with different operating systems and the need for code updates, these do not significantly detract from the overall positive feedback received. Users are encouraged to be proactive in updating dependencies where necessary and to use alternative tools if required by their system. Overall, the course is highly recommended with a strong emphasis on its quality content and approachable teaching style.

Charts

Price

NodeJS - The Complete Web Developer Bootcamp 2023 - Price chart

Rating

NodeJS - The Complete Web Developer Bootcamp 2023 - Ratings chart

Enrollment distribution

NodeJS - The Complete Web Developer Bootcamp 2023 - Distribution chart

Related Topics

2284042
udemy ID
3/21/2019
course created date
6/27/2019
course indexed date
Bot
course submited by