Node with React: Fullstack Web Development
4.6 (11,217 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
61,176 students enrolled

Node with React: Fullstack Web Development

Build and deploy fullstack web apps with NodeJS, React, Redux, Express, and MongoDB.
4.6 (11,217 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
61,176 students enrolled
Created by Stephen Grider
Last updated 5/2020
English
English [Auto-generated], Indonesian [Auto-generated], 6 more
  • Italian [Auto-generated]
  • Japanese [Auto-generated]
  • Polish [Auto-generated]
  • Portuguese [Auto-generated]
  • Romanian [Auto-generated]
  • Spanish [Auto-generated]
Current price: $116.99 Original price: $179.99 Discount: 35% off
21 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 25.5 hours on-demand video
  • 18 articles
  • 15 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Create boilerplate starter projects with React, Redux, Express, and Mongo
  • Understand common web technologies and design patterns to connect them together
  • Master deployment techniques between the production and development environments
  • Make an app with Google OAuth authentication
  • Learn to effectively create and send emails from a backend server
  • Accept and process credit card payments from users
Course content
Expand all 210 lectures 25:54:35
+ Course Overview - Start Here!
7 lectures 34:46
Course Resources
00:30
[Optional] Prettier Setup
06:29
App User Flow Walkthrough
04:30
Tech Stack
05:29
App Mockups
07:16
+ Server Side Architecture
9 lectures 01:01:03
Relationship Between Node and Express
08:26
Generating Express Apps
08:11
Express Route Handlers
07:32
Node Version in Engines Property
00:34
Heroku Deployment Checklist
12:10
Installing the Heroku CLI
07:29
Verifying Heroku Deployment
08:37
Followup Deployments
03:29
+ Authentication with Google OAuth
14 lectures 01:31:16
The OAuth Flow
09:08
Overview of Passport JS
07:58
Passport Setup
07:16
Google+ Deprecation
00:28
Google Project Setup with new UI
01:04
Enabling Google OAuth API
09:59
Securing API Keys
05:54
Google Strategy Options
07:23
Testing OAuth
07:48
Authorized Redirect URI's
08:53
OAuth Callbacks
08:06
Access and Refresh Tokens
07:31
Nodemon Setup
03:58
+ Adding MongoDB
19 lectures 02:44:56
Server Structure Refactor
12:42
The Theory of Authentication
11:48
Signing In Users with OAuth
15:36
Introduction to MongoDB
08:03
MongoDB Atlas Setup and Configuration
01:47
mLab Setup [PARTIALLY DEPRECATED]
07:53
Connecting Mongoose to Mongo
06:51
Breather and Review
03:09
Mongoose Model Classes
08:26
Saving Model Instances
10:40
TokenError: Bad Request
00:55
Mongoose Queries
07:32
Passport Callbacks
07:37
Encoding Users
15:01
Deserialize User
04:28
Enabling Cookies
07:57
Testing Authentication
08:18
Logging Out Users
04:12
[Optional] A Deeper Dive
22:00
+ Dev vs Prod Environments
7 lectures 51:03
Dev vs Prod Keys
05:38
MongoDB Atlas Production Setup and Configuration
01:25
Generating Production Resources
09:49
Determining Environment
06:34
Version Control Scheme
08:05
Heroku Env Variables
08:03
Fixing Heroku Proxy Issues
11:29
+ Moving to the Client Side
8 lectures 01:27:47
npx Create React App Generation
00:18
React App Generation
06:58
A Separate Front End Server
07:25
Running the Client and Server
08:56
Important Create React App Proxy Update
00:59
Routing Stumbling Block
18:53
The Beauty of Create React App's Proxy
14:35
[Optional] Why This Architecture?
29:43
+ Developing the Client Side
31 lectures 03:43:17
Async/Await Syntax
18:49
Refactoring with Async/Await
07:39
Important Note About Proxy
00:07
Front End Tech
07:23
Client React Setup
07:40
Installing Root Modules
06:44
Troubleshooting NPM
02:25
Redux Review and Setup
10:18
The Auth Reducer
04:51
Finishing Reducer Setup
03:35
Why We Care About Auth
04:45
React Router Setup
05:56
Route Configuration
05:40
Matching Routes with Exact
08:15
Always Visible Components
06:11
Materialize CSS
08:48
Webpack with CSS
07:56
Header Design
04:48
Current User API
05:58
Additional Proxy Rules
11:17
Basics of Redux Thunk
10:12
Refactoring the App
05:17
Testing FetchUser
09:02
Refactoring to Async/Await
08:55
AuthReducer Return Values
10:37
Accessing State in the Header
07:51
Header Content
05:00
Redirecting a User on Auth
07:33
Redirect on Logout
07:37
Landing Component
04:17
Link Tags
07:51
+ Handling Payments
21 lectures 02:34:53
Client Side Billing
03:07
Billing Considerations
11:55
Stripe Billing Process
05:34
Exploring the Stripe API
08:15
Stripe API Keys
10:19
Env Variables with React
13:31
The Payments Component
10:29
Stripe Tokens
09:08
Payment Fixes
06:56
Reusing Action Types
09:16
Positing the Stripe Token
03:11
Post Request Handlers
04:31
Creating Charges
05:19
BodyParser Middleware
06:42
Creating a Charge Object
06:32
Finalizing a Charge
04:40
Adding Credits to a User
07:27
Requiring Authentication
06:46
Route-Specific Middlewares
11:39
Displaying Credit Quantity
04:18
Updating Credits
05:18
+ Back End to Front End Routing in Production
6 lectures 51:08
Express with Create-React-App in Production
12:20
Routing in Production
08:09
Deployment Options
10:08
Adding in a Heroku Build Step
16:10
Fixes for Failing Heroku Builds
00:32
Testing Deployment
03:49
+ Mongoose for Survey Creation
28 lectures 03:22:02
Survey Overview
08:00
Server Routes
05:24
Survey Model
07:07
Model Deficiencies
05:56
Limitations of Subdocument Collections
07:52
Setting up SubDocs
04:49
Relationship Fields
05:03
Survey Creation Route Handler
07:15
Verifying Minimum Credits
06:24
Creating Surveys
09:06
Creating Subdoc Collections
08:48
Oops! A Little Tweak
00:22
Creating Mailers
07:18
Identifying Unique Users
14:29
Sendgrid Activation Update
03:03
Sendgrid Setup
08:21
Mailer Setup
09:39
Update for "from_email" setting
00:20
Mailer in Use
11:01
Mailer Constructor
08:31
Boilerplate for Sending Emails
09:29
More Mailer Properties
05:57
Sending SendGrid Emails
06:16
Testing Email Sending
09:20
Improving the Email Template
08:58
Polish in the Route Handler
09:52
Verifying Sendgrid Click Tracking
02:09
Feedback for User Feedback
11:13
Requirements
  • Basic understanding of Javascript, React, and Redux
  • A Mac, Windows, or Linux computer
Description

Note: This course assumes you've got the basics of React and Redux down.  Check out my course 'Modern React with Redux', its the perfect preparation!

Go beyond the basics of React and Redux!  This course will teach you to combine the ultra-popular React, Redux, Express, and MongoDB technologies to build a fullstack web application.

Advanced Deployment? You will learn it.  Billing/PaymentsIncluded.  Handling EmailOf course!

------------------------------

What Will You Build?

All of my courses are 'learn-by-doing': no boring endless lectures with Powerpoints, only live, interactive coding examples.  In this course we'll build one massive web application that profiles the advanced features of React, Redux, Express, and Mongo.  By putting each concept into a real app, you'll get a better idea of when to use each unique and powerful feature.

Build a large feedback-collection app. This mega app will include the full gamut of features, including everything from authentication to email handling.  You'll learn how to build an app that can be used to send mass emails to a big list of users for the purpose of collecting feedback.  It's my goal to ensure you understand each feature we build into this app so you can apply them to your own personal or professional projects in the future.

------------------------------

Here's what we'll learn:

  • Learn the architectural considerations of building a full stack app
  • Connect a front-end Create-React-App server to a NodeJS and Express backend
  • Communicate data from your Mongo database to your React application
  • Understand how to route user requests on the front end with React Router and on the backend with Express
  • Build reusable user inputs with Redux Form, complete with navigation
  • Handle credit cards and receive payments from your users with Stripe
  • Engage your users with automated emails
  • Enhance authentication flows in your app with Google OAuth authentication
  • Separate production and development resources with advanced API key handling techniques
  • Educate your users on how to use your app with custom build landing pages

I've built the course that I would have wanted to take when I was learning to build fullstack apps. A course that explains the concepts and how they're implemented in the best order for you to learn and deeply understand them.

Who this course is for:
  • Anyone who wants to learn how to build full stack apps with the latest in web technology