Practical Node.js | Beginner to professional(A complete Node.js Masterclass)
Introduction to the course
4 Topics
Intro
Project-1 overview
Project-2 overview
Project-3 overview
1.Introduction to Node.js
10 Topics
1.Welcome to the journey
2.What is Node.js?
3.Installing Node.js
4. Environment set up
5.playing with REPL
6.Execute code with Node.js
7. Node.js is Single-threaded event driven, asynchronous
8.Asynchronous programming in action
9. Node.js Internals (thread pool, libuv, event queue,event loop)
10.Why We should learn Node.js?
2. Node.js fundamentals
12 Topics
1. Introduction to the section
2. Introducing Node.js modular system
3. Node.js module in action
4. Node.js OS module
5. Node.js path module
6. Node.js fs module
7. callback to promise (Node.js util module)
8. promise to async await
9. Working with stream
10.Working with eventEmitter
11. Node.js http module
Support
3. NPM (Node package manager!)
10 Topics
1. Introduction to the section
2.Introduction to the NPM
3.Working with package.json
4.Installing 3rd party package
5.Exploring Installed package
6.Semantic versioning
7.updating package
8.uninstalling package
9.Working with dev dependencies
10.working with global package
4.command line application(contact app)
18 Topics
1.overview of the project
2.parsing command line arguments
3.Basics of commander
4.commander in action
5.Introduction to JSON
6.saving and reading contacts from file storage
7.Refactoring for better code maintainability
8.forcing unique valid email for each contact
9.colorizing console message
10.Asking a better question
11.Improving user interface
12.Homework-Listing all contacts
13.Solution-Listing all contacts
14.Delete contact
15.Homework-Finding specific contact
16.solution-Finding specific contact
17.Homework-update contact
18.solution-update contact
5.Debugging Node.js
6. Beginning Idea app development
12 Topics
1.project overview(Idea App)
2. Why we need express?
3.plain Node.js vs express
4.Working with query parameter
5.Homework-Working with query and request params
6.solution-Working with query and request params
7.Not Found Route
8.Introducing RESTful Routing
9.Working with middleware
10.Homework-Writing your own server and configuring routes
11.solution-Writing your own server and configuring routes
12.Working with request params
7. Templating and RESTful Routing
18 Topics
1.Introduction to templating engine
2.Introduction to handlebars
3.Homework
4.solution
5.Designing application with bootstrap
6.Navigation and partials
7.working with all ideas
8.showing single idea
9.working with adding Idea Form
10.Adding idea
11.Working with edit idea form
12.Handlebars helper
13.updating idea
14.Deleting idea
14. RESTful route reviewed
16.Implementing read more
17.Working with rich text editing
18.Homework
8.Introduction to Database
23 Topics
1.Importance of Database
2.Introduction to Database (SQL and NOSQL)
3.Introduction to MongoDB
4. MongoDB in the cloud
5.Working with database from terminal
6.connecting local and Cloud DB
7.Inserting data
8.working with cursor method
9. MongoDB operator
10. update document
11.delete document
12. objectID
13.Introducing Mongoose
14. Mongoose Schema
15.finding document using mongoose
16. http status code
17. Show single idea
18.populate idea information in edit Idea From
19.Adding idea
20.Modifying schema to receive allow comments field
21.update idea
22.Delete idea
23.Introduction of validating use input
9.validating user data
12 Topics
1.Introduction to the section
2.Schema level validation
3.minlength and maxlength validation
4.enum validator and default value
5.custom getter and setter
6.custom validator
7.validation in user input level
8.validating user input using express validator-1
9.validating user input using express validator-2
10.sanitizing user input
11.validation in idea update
12.ObjectId validation in user Input level
10.Refactoring App
17 Topics
1. Separating DB logic
2.separating doc generation helper
3.Refactoring route logic
4.Refactoring pages
5.modifying page template
6. Refactoring add idea validation rules
7.Refactoring update Idea validation rules
8.Error handling middleware
9.async await middleware
10.Express-async-errors
11.Introducing MVC architecture
12. MVC architecture in action
13.solution-MVC architecture in the rest of the project
14.Homework-applying route middleware and MVC architecture for pages
15.solution-applying route middleware and MVC architecture for pages
16.Working with tags
17.Tags input validation
11. Authentication with cookies and session
20 Topics
1.Introduction to the section
2.Working with Register controller
3.Working with Register view
4.Homework-Working with userSchema
5.solution-Working with userSchema
6.Registering user with schema level validation
7.Homework-Register Input level validation
8.solution-Register Input level validation
9.user Registration
10.solving some existing issue
11.Hashing password
12.Homework-create login controller and view
13.solution-create login controller and view
14.approaching user login
15.Working with cookies
16.logOut using cookies
17.working with session
18.logout using cookies and session
19.showing menu based on the authentication status
20.Restricted route based on auth status
12.Authentication with passport and social Login
12 Topics
1.Introduction to passport js
2.configuring passport and local strategy
3.login and logout using passport js
4.middleware to check auth status
5.Flash messaging
6.solution-Adding flash message
7.Adding flash message in auth action
8.using google service for authentication(log in using google)
9. Getting user data from google
10.Login user with Google
11. unhadled promise Rejection in passport
12.Working with environment variable
13.commenting system and advance mongoose modeling
20 Topics
1. Homework-creating route, controller, view for comment form
2. Solution-creating route, controller, view for comment form
3.showing comment form in each idea
4.Adding comment
5.Homework-Input level validation in adding comment
6.Solution-Input level validation in adding comment
7. Accessing and showing comment
8.Homework-showing tags
9.solution-showing tags
10.showing tags in edit idea form
11.Deleting comment
12.working with sub document or embedding
13.referencing document(child referencing)
14.parent referencing and virtual field population
15.Deleting comment(parent reference)
16.data modeling overview
17.Enable or disable commenting
18.Homework-adding or removing comment based on auth status
19.solution-adding or removing comment based on auth status
20.Introducing authorization
14.authorization(Restrict access level on different resource)
15 Topics
1.Adding auth user data in the respected schema
2.Homework-adding user information in ideaSchema
3.Solution-adding user information in ideaSchema
4.working with authorization middleware
5.show or hide button based on the authorization status
6.Homework-implement authorization feature in the commenting system
7.solution-implement authorization feature in the commenting system
8. working with date
9.Homework-showing date and user information in idea
10.solution-showing date and user information in idea
11.working with index page
12.Refactoring idea document generation helper
13.Homework-Refactoring comment document generation helper
14.solution-Refactoring comment document generation helper
15.Refactoring handlebars helper
15.Working with user profile and dashboard
19 Topics
1.Getting user profile
2.creating user dashboard
3.Homework-showing user information
4.solution-showing user information
5. Homework- working with Edit profile route controller
6.solution-working with Edit profile route controller
7.Homework-Working with update profile
8.solution-Working with update profile
9.homework-populating user with ideas
10.solution-populating user with ideas.
11.Getting ideas by user
12.Homework-Delete user account
13.solution-Delete user account
14.Homework-Delete ideas on user account deletion
15.solution-Delete ideas on user account deletion
16.Homework-show ideas in user dashboard
17.solution-show ideas in user dashboard
18.control public access route
19.showing idea based on the authorization status
16.Role-based authorization(super admin) and category system(using Ajax)
23 Topics
1.Introduction to the section
2.Adding user role in the Schema
3.creating middleware to check admin access
4.Homework
5.showing categories menu on admin dashboard
6.working with category schema
7.Introducing Ajax in application
8.Adding category route in server-side
9.Adding category from client-side using ajax
10.Homework
11.solution- Getting categories from server using ajax
12.Homework
13.Solution-Deleting category using AJAX
14.Homework-show category in adding Idea Form
15.solution-show category in adding Idea Form
16.Adding category with idea
17.Homework
18.Showing category in each Idea
19.Homework-showing ideas related to the category
20.solution-showing ideas related to the category
21.showing categories and tags in sidebar
22.Homework-populate categories in edit idea form with pre-selection
23.solution-populate categories in edit idea form with pre-selection
17.Working with Like and comment count system (Assignment section)
8 Topics
1.Introduction to the section
2.solution-modeling like related data
3.Homework-writing routes for adding and removing like
4.solution-writing routes for adding and removing like
5.Homework-writing logic for adding like and related message
6.solution-writing logic for adding like and related message
7.solution-getting comment and like count
8.Review of data modeling
18.uploading and resizing Image
15 Topics
1.Introduction to the section
2.Image uploading with multer
3.Configuring multer for file restriction
4.validating input file
5.saving file reference in the database
6.serving image for view
7.Resizing image
8.Deleting file
9.Homework-Idea image upload
10.solution-Idea image upload
11.optional – Designing idea image placement
12.Homework-Deleting image on account deletion
13.solution-Deleting image on account deletion
14.Homework-Delete Idea Image after deleting the user account
15.solution-Delete Idea Image after deleting the user account
19.Sending Email
5 Topics
1.Introduction to sending mail
2. sending mail
3. Refactoring for future extension
4. Homework
5. sending account deletion email
20.account activation on email confirmation and password reset
13 Topics
1.Introduction to the section and Json webtoken
2.generating token for account activation
3.sending token via email
4. receiving token and account activation
5.Homework-forget-password route
6.solution-forget-password route
7.Homework-Generating token for reset password
8.solution-Generating token for reset password
9.tracking reset password token and sending email
10.writing logic for reset password view
11.update password
12.homework-writing validation logic for reset password
13.solution-writing validation logic for reset password
21.pagination
8 Topics
1.Introduction to the section
2. Writing pagination logic
3.showing page number conditionally
4.showing First page and last page conditionally
5.Homework- pagination in category page
6.solution- pagination in category page
7.pagination in user page
8.sorting ideas
22.securing Node.js application
10 Topics
1.Introduction to the security
2.Understanding CSRF attack
3.Using CSRF token
4.Generating CSRF token for global access
5.passing CRF token in AJAX request
5.2.Homework
6.using Helmet to prevent the various attack
7.Avoiding NoSQL injection(operator) attack
8.limit login and reset password event(Brute force attack prevention)
9.prevent XSS attack
23.performance optimization and deployment to Heroku
12 Topics
1.Introduction to deployment
2.compressing response
3.Working with the environment variable
4.changing session and cookies configuration on production
5.sending mail configuration based on environment
6.change DB configuration based on production
7.Deploying on Heroku
8.Changing mail host on production
9.Fixing google redirection URL
10.bug fixing authentication with google
11.checking and filing 3rd party vulnerabilities
12.optional Refactoring
24.REST API development
22 Topics
1.Server-side rendering vs rest API approach
2.Introducing postman and request and response
3.Full project overview – REST API Development with Node.js and Express
4.Notes route and controller
5.examining note related routes from postman
6.examining user-related routes from postman
7.Login user
8. Tracking Logged in user in the server(session cookies, token)
9.Generating token
10.Deep Drive in Middleware
11.Auth Middleware to check logged in user
12.Accessing restricted route(get single user)
13.Logging Out user
14.Restricted notes route
15.Relation of note to user
16.Authorization- updating and deleting Note
17.Role-based authorization
18.Good practice of saving secret key(Environment variable)
19.Using Remote database
20.Deployment to Heroku
21.error handling
22.21.Enable CORS
25.Miscellaneous
1 of 2
Previous Topic
Next Topic
Project-2 overview
Practical Node.js | Beginner to professional(A complete Node.js Masterclass)
Introduction to the course
Project-2 overview
Previous Topic
Back to Lesson
Next Topic