Build a Realtime App with React Hooks and GraphQL

4h 32m 39s
English
Paid

Course description

Master the latest and greatest features in React within the context of a full-stack, real-world app. A realtime, full-stack React app from scratch with a GraphQL Server (Apollo Server 2) on the backend, a cloud MongoDB database (Mongo Atlas) with React Hooks to manage our state (replacing Redux!), with Social Authentication (Google OAuth2), realtime data with GraphQL Subscriptions, image uploads with Cloudinary and much more.

Read more about the course

Our app will be a live geolocation app called GeoPins where users can 'pin' different locations on the map and share their own content with other users in realtime--to share pictures, reviews of the location and area, interact with other users by adding comments to their pins, and manage the pins they've created.

### WHAT CONCEPTS WILL IT COVER? ###

  • How to build a robust GraphQL Server with Authentication (with Apollo Server 2)

  • How to use two GraphQL client libraries in-depth--Apollo Client and GraphQL Request

  • Replacing Redux with the useContext and useReducer Hooks for global state management

  • All the major concepts within GraphQL: Queries, Mutations, Subscriptions, TypeDefs, Resolvers, Inputs, etc

  • All the major hooks (useState, useEffect, useContext, useReducer)

  • Building Custom Hooks to 'hook in' to additional functionality to your applications

  • Integrating Social Login (Google OAuth) with Apollo Server 2

  • Display App Changes in Realtime with GraphQL Subscriptions

  • Dynamic image uploads using the Cloudinary API

  • MongoDB in the cloud with MongoDB Atlas

  • Using Mongoose to create models, CRUD and search operations, and population

  • Making attractive apps with the Material UI component library and Material UI Icons

  • The Material UI 'useMediaQuery' Hook for dead-simple mobile / responsive design

  • Develop stunning map applications with the Mapbox API and ReactMapGL

  • Use the Geolocation API to get Users' Current Location

  • Create Route Guards / Protected Routes with React Router v4

  • Essential authentication / authorization concepts within GraphQL / Apollo

  • Error handling on our server and in our React client

  • Async / await functions along with tons of ES6 / ES7 concepts

  • Deployment with Heroku and Now v2

  • And tons more!

  • Requirements:
    • Basic understanding of React / React Hooks (i.e. having taken my React Hooks course)
    • Familiarity with GraphQL
Who this course is for:
  • React / JavaScript developers wanting to learn cutting-edge development tools and techniques
  • Developers looking to build complete real-world JavaScript applications

What you'll learn:

  • Building practical, feature-rich apps with React Hooks and GraphQL
  • Managing state in real-world apps with React Hooks
  • How to build fullstack apps with React Hooks and GraphQL
  • Integrating GraphQL client / server libraries with React Hooks

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 37 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing

Watch Online Build a Realtime App with React Hooks and GraphQL

0:00
/
#1: What You Need For This Course

All Course Lessons (37)

#Lesson TitleDurationAccess
1
What You Need For This Course Demo
01:40
2
How To Get the Most Out Of This Course
01:35
3
Git Clone Repo and Install Dependencies
01:25
4
Creating our GraphQL Server
04:09
5
Creating Database with MongoDB Atlas
04:25
6
Creating Mongoose Models for User / Pin Data
06:40
7
Exploring our React App
03:49
8
Setting up Google OAuth
04:54
9
Adding Google Login Button
05:07
10
Authenticating Users from Apollo Server
18:37
11
Managing App State with useContext / useReducer
07:32
12
Styling Splash Page / App Cleanup
05:10
13
Creating Protected Route for App
07:47
14
Build Header Component
05:24
15
Build Signout Button
05:40
16
Creating and Styling our Map
09:33
17
Placing a Pin at User's Current Position
07:14
18
Adding Draft Pin
06:05
19
Adding Blog Area for Pin Content
05:09
20
Building / Styling Blog Components
07:26
21
Managing Pin Content State and Deleting Draft Pins
07:28
22
Uploading Images with Cloudinary
06:32
23
Creating New Pins with CREATE_PIN Mutation
14:42
24
Create Custom GraphQL Request Hook
08:16
25
Displaying Created Pins on the Map
12:34
26
Highlighting Newly Created Pins
03:11
27
Adding Popup to our Pins
08:08
28
Deleting Pins with DELETE_PIN Mutation
07:05
29
Building Out / Styling Pin Content
07:24
30
Building out Components to Create / Display User Comments
06:28
31
Creating Comments with CREATE_COMMENT_MUTATION
16:19
32
Handling Expired Auth Token Errors
02:43
33
Setting up Subscriptions on the Backend
11:34
34
Subscribing to Live Data Changes with Apollo Client
10:28
35
useMediaQuery for Easy Mobile / Response Design
10:13
36
Fixing App Issues
05:59
37
Deploying with Now v2 and Heroku
14:14

Unlock unlimited learning

Get instant access to all 36 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

MongoDB - The Ultimate Administration and Developer's Guide

MongoDB - The Ultimate Administration and Developer's Guide

Sources: udemy
Join this course on MongoDB to learn everything about this extremely popular database and query language from scratch, in minute detail, and...
37 hours 45 minutes 15 seconds
Complete Ansible Bootcamp: Go from zero to hero in Ansible

Complete Ansible Bootcamp: Go from zero to hero in Ansible

Sources: udemy
Whether you have never learn about Ansible, or want to learn about the advanced features of Ansible, this course is for you! Whether you want to get theories of Ansible only, o...
3 hours 37 minutes 45 seconds