Master the latest and greatest features in React by building a full-stack, real-world app from scratch. This course guides you through creating a realtime React app with a GraphQL server (Apollo Server 2) backend, leveraging a cloud MongoDB database (Mongo Atlas), and utilizing React Hooks for state management. Enhance your app with Social Authentication (Google OAuth2), realtime data with GraphQL Subscriptions, and image uploads via Cloudinary, among other advanced features.
Course Overview
You'll develop a live geolocation app called GeoPins, allowing users to 'pin' various locations on a map and share content with others in real-time. Share pictures, and reviews, interact with other users through comments on pins, and manage the pins you've created.
Key Concepts Covered
Building a robust GraphQL Server with Authentication using Apollo Server 2
In-depth utilization of Apollo Client and GraphQL Request libraries
State management with useContext and useReducer Hooks, replacing Redux
Understanding GraphQL concepts: Queries, Mutations, Subscriptions, etc.
Mastering major Hooks: useState, useEffect, useContext, useReducer
Creating Custom Hooks for additional application functionality
Implementing Social Login integration with Google OAuth
Displaying App Changes in Realtime with GraphQL Subscriptions
Dynamic image uploads with the Cloudinary API
Utilizing MongoDB in the cloud with MongoDB Atlas
Building models and CRUD operations with Mongoose
Designing apps with Material UI component library and Icons
Responsive design using the Material UI 'useMediaQuery' Hook
Developing maps applications with Mapbox API and ReactMapGL
Using the Geolocation API for users' current location
Creating Route Guards and Protected Routes with React Router v4
Authentication and authorization with GraphQL/Apollo
Handling errors in the server and React client
Using Async/await functions and exploring ES6/ES7 concepts
Deploying applications with Heroku and Now v2
Prerequisites
- Basic understanding of React/React Hooks (prior completion of a React Hooks course is recommended)
- Familiarity with GraphQL
Target Audience
- React/JavaScript developers seeking to learn advanced development tools and techniques
- Developers aspiring to build comprehensive real-world JavaScript applications
What You'll Learn
- Developing practical, feature-rich apps with React Hooks and GraphQL
- State management in real-world applications using React Hooks
- Building full-stack apps with React Hooks and GraphQL
- Integrating GraphQL client/server libraries with React Hooks