The Complete Node.js Developer Course (3rd Edition)
Responsible | Nguyễn Trung Dũng |
---|---|
Last Update | 04/13/2023 |
Completion Time | 3 days 20 hours 1 minute |
Members | 3 |
-
01 Welcome
-
001 Welcome to the Class!
-
002 Grab the PDF Guide
-
-
02 Installing and Exploring Node.js
-
003 Section Intro_ Installing and Exploring Node.js
-
004 Installing Node.js and Visual Studio Code
-
005 What is Node.js_
-
006 Why Should I Use Node.js_
-
007 Your First Node.js Script
-
-
03 Node.js Module System (Notes App)
-
008 Section Intro_ Node.js Module System
-
009 Importing Node.js Core Modules
-
010 Importing Your Own Files
-
011 Importing npm Modules
-
012 Printing in Color
-
013 Global npm Modules and nodemon
-
-
04 File System and Command Line Args (Notes App)
-
014 Section Intro_ File System and Command Line Args
-
015 Getting Input from Users
-
016 Argument Parsing with Yargs_ Part I
-
017 Argument Parsing with Yargs_ Part II
-
018 Storing Data with JSON.en
-
019 Adding a Note
-
020 Removing a Note
-
021 ES6 Aside_ Arrow Functions
-
022 Refactoring to Use Arrow Functions
-
023 Listing Notes
-
024 Reading a Note
-
-
05 Debugging Node.js (Notes Apps)
-
025 Section Intro_ Debugging Node.js
-
026 Debugging Node.js
-
027 Error Messages
-
-
06 Asynchronous Node.js (Weather App)
-
028 Section Intro_ Asynchronous Node.js
-
029 Asynchronous Basics
-
030 Call Stack, Callback Queue, and Event Loop
-
031 Making HTTP Requests
-
032 Customizing HTTP Requests
-
033 An HTTP Request Challenge
-
034 Handling Errors
-
036 Callback Abstraction
-
037 Callback Abstraction Challenge
-
038 Callback Chaining
-
039 ES6 Aside_ Object Property Shorthand and Destructuring
-
040 Destructuring and Property Shorthand Challenge
-
041 Bonus_ HTTP Requests Without a Library
-
035 The Callback Function
-
-
07 Web Servers (Weather App)
-
042 Section Intro_ Web Servers
-
043 Hello Express!
-
044 Serving up HTML and JSON
-
045 Serving up Static Assets
-
046 Serving up CSS, JS, Images, and More
-
047 Dynamic Pages with Templating
-
048 Customizing the Views Directory
-
049 Advanced Templating
-
050 404 Pages
-
051 Styling the Application_ Part I
-
052 Styling the Application_ Part II
-
-
08 Accessing API from Browser (Weather App)
-
053 Section Intro_ Accessing API from Browser
-
054 The Query String
-
055 Building a JSON HTTP Endpoint
-
056 ES6 Aside_ Default Function Parameters
-
057 Browser HTTP Requests with Fetch
-
058 Creating a Search Form
-
059 Wiring up the User Interface
-
-
09 Application Deployment (Weather App)
-
060 Section Intro_ Application Deployment
-
061 Joining Heroku and GitHub
-
062 Version Control with Git
-
063 Exploring Git
-
064 Integrating Git
-
065 Setting up SSH Keys
-
066 Pushing Code to GitHub
-
067 Deploying Node.js to Heroku
-
068 New Feature Deployment Workflow
-
069 Avoiding Global Modules
-
-
10 MongoDB and Promises (Task app)
-
070 Section Intro_ Databases and Advanced Asynchronous Development
-
071 MongoDB and NoSQL Databases
-
072 Installing MongoDB on macOS and Linux
-
073 Installing MongoDB on Windows.en
-
074 Installing Database GUI Viewer
-
075 Connecting and Inserting Documents
-
076 Inserting Documents
-
077 The ObjectID.en
-
078 Querying Documents
-
079 Promises.en
-
080 Updating Documents.en
-
081 Deleting Documents
-
-
11 REST APls and Mongoose (Task App)
-
082 Section Intro_ REST APIs and Mongoose
-
083 Setting up Mongoose
-
084 Creating a Mongoose Model
-
085 Data Validation and Sanitization_ Part I
-
086 Data Validation and Sanitization_ Part II
-
087 Structuring a REST API
-
088 Installing Postman
-
089 Resource Creation Endpoints_ Part I
-
090 Resource Creation Endpoints_ Part II
-
091 Resource Reading Endpoints_ Part I
-
092 Resource Reading Endpoints_ Part II
-
093 Promise Chaining
-
094 Promise Chaining Challenge
-
095 Async_Await
-
096 Async_Await_ Part II
-
097 Integrating Async_Await
-
098 Resource Updating Endpoints_ Part I
-
099 Resource Updating Endpoints_ Part II
-
100 Resource Deleting Endpoints
-
101 Separate Route Files
-
-
12 API Authentication and Security (Task App)
-
102 Section Intro_ API Authentication and Security
-
103 Securely Storing Passwords_ Part I
-
104 Securely Storing Passwords_ Part II
-
105 Logging in Users
-
106 JSON Web Tokens
-
107 Generating Authentication Tokens
-
108 Express Middleware
-
109 Accepting Authentication Tokens.en
-
110 Advanced Postman
-
111 Logging Out
-
112 Hiding Private Data
-
113 Authenticating User Endpoints
-
113 Authenticating User Endpoints
-
115 Authenticating Task Endpoints
-
116 Cascade Delete Tasks
-
-
13 Sorting, Pagination, and Filtering (Task App)
-
117 Section Intro_ Sorting, Pagination, and Filtering
-
118 Working with Timestamps
-
119 Filtering Data
-
120 Paginating Data
-
121 Sorting Data
-
-
14 File Uploads (Task App)
-
122 Section Intro_ File Uploads
-
123 Adding Support for File Uploads
-
124 Validating File Uploads
-
125 Validation Challenge
-
126 Handling Express Errors
-
127 Adding Images to User Profile
-
128 Serving up Files
-
129 Auto-Cropping and Image Formatting
-
-
15 Sending Emails (Task App)
-
130 Section Intro_ Sending Emails
-
131 Exploring SendGrid
-
132 Sending Welcome and Cancelation Emails
-
133 Environment Variables
-
134 Creating a Production MongoDB Database
-
135 Heroku Deployment
-
-
16 Testing Node.js (Task App)
-
136 Section Intro_ Testing Node.js
-
137 Jest Testing Framework
-
138 Writing Tests and Assertions.en
-
139 Writing Your Own Tests
-
140 Testing Asynchronous Code
-
141 Testing an Express Application_ Part I
-
142 Testing an Express Application_ Part II
-
143 Jest Setup and Teardown.en
-
144 Testing with Authentication
-
145 Advanced Assertions
-
146 Mocking Libraries
-
147 Wrapping up User Tests.en
-
148 Setup Task Test Suite
-
149 Testing with Task Data.en
-
150 Bonus_ Extra Test Ideas
-
-
17 Real-Time Web Applications with Socket.io (Chat App)
-
151 Section Intro_ Real-Time Web Applications with Socket.io
-
152 Creating the Chat App Project
-
153 WebSockets
-
154 Getting Started with Socket.io
-
155 Socket.io Events
-
156 Socket.io Events Challenge
-
157 Broadcasting Events
-
158 Sharing Your Location
-
159 Event Acknowledgements
-
160 Form and Button States
-
161 Rendering Messages
-
162 Rendering Location Messages
-
163 Working with Time
-
164 Timestamps for Location Messages
-
165 Styling the Chat App
-
166 Join Page
-
167 Socket.io Rooms
-
168 Storing Users_ Part I
-
169 Storing Users_ Part II
-
170 Tracking Users Joining and Leaving
-
171 Sending Messages to Rooms
-
172 Rendering User List
-
173 Automatic Scrolling
-
174 Deploying the Chat Application
-
-
18 Wapping Up
-
175 Section Intro
-
176 New Feature Ideas
-
177 Bonus_ What should I learn next_
-