Video description
In Learning Clientside GraphQL with Apollo, you’ll learn the benefits of using GraphQL with Apollo and how this robust stack can solve problems that can arise when working with data from front-end APIs. You’ll gain hands-on experience as you build a self-contained voting application, complete with a database and front-end and backend applications. Your project will allow users to vote a topic up or down, propose new topics, and leave comments on topics.
GraphQL, a data query and manipulation language, is the open source community’s answer to the growing complexity of the data landscape of front-end web applications. GraphQL’s ease of querying complex data—and returning nothing more nor less than necessary—makes it a simpler, more efficient, and flexible alternative to other web service architectures.
Built on the GraphQL specification, Apollo is a powerful set of tools and libraries which implements extensive research and feedback from the user community. Rich with features and techniques that simplify the data-layers within organizations, it makes rollouts of new deployments faster and easier.
Inside:
- The benefits of GraphQL and Apollo
- The design decisions behind GraphQL and Apollo
- GraphQL queries and mutations
- URL routing and pagination
- How to set up your Apollo client
- How to create a Node GraphQL backend from scratch
- How to build a self-contained application using GraphQL and Apollo
This course is for front-end web developers familiar with Javascript and the fundamentals of Node and HTML. Knowledge of GraphQL and Apollo may be helpful, but is not necessary.
Azat Mardan is one of the leading experts on JavaScript, Node, React, and cloud technologies, who has authored multiple top-selling books and video courses, including Manning book React Quickly. He is a Microsoft MVP and works as an Engineering Leader at Indeed. He is also the founder of Node University.
Table of Contents
- COURSE INTRODUCTION
Course overview
00:01:44
About the instructor
00:03:17
Course prerequisites
00:02:06
What is GraphQL and how is different from REST?
00:05:12
What is Apollo and how is it different from Redux and Relay Modern?
00:04:20
- GETTING STARTED WITH GRAPHQL
GraphQL architecture
00:06:57
Getting started with GraphQL
00:08:29
Enhancing GraphQL queries
00:05:33
Fetching data from a GraphQL backend using cURL
00:04:10
Working with GraphQL types relationships
00:04:37
Adding data with GraphQL mutation queries
00:02:39
Updating data with GraphQL mutation queries
00:02:58
Deleting data with GraphQL mutation queries
00:01:35
Query parameters last, first, before, and after
00:03:35
Query parameters skip, orderBy, and filter and meta queries
00:03:39
Schema for the Dashboard project and enhanced relationships
00:05:52
- APOLLO SETUP AND READ QUERIES
Dashboard project overview
00:02:48
Demo of Dashboard views
00:02:11
Learning Dashboard project structure
00:03:30
Launching the Dashboard project starter code
00:05:00
Setting up the Apollo client with ApolloProvider, connecting to GraphQL backend
00:04:35
Referring to a GraphQL query fragment for notifications
00:04:13
Defining a GraphQL query fragment for notifications
00:04:17
Testing the implementation for notifications
00:06:51
- UPDATE QUERIES (MUTATIONS) AND FRAGMENTS
Unit overview
00:01:02
Overview of the connections (relationships) between order and product types
00:05:50
Implementing GraphQL read query for orders
00:03:46
Implementing GraphQL read query for orders, part 2
00:04:59
Implementing GraphQL update query (mutation) for orders
00:02:44
Implementing GraphQL update query (mutation) for orders, part 2
00:06:26
Supplying multiple types of data for home
00:03:45
Supplying multiple types of data for home, part 2
00:02:29
Supplying multiple types of data for home, part 3
00:04:14
- URL ROUTING AND PAGINATION
Unit overview
00:01:13
Writing pagination query for products using first, skip, and GraphQL variables
00:05:43
Implementing pagination using URL query string parameters and React Router
00:06:05
Implementing detailed view a delete for product
00:04:40
Testing the pagination and delete implementation for products
00:03:20
- GRAPH.COOL LOCAL SETUP
Unit overview
00:00:57
Setting up GraphQL backend graph.cool locally using Docker
00:04:56
Switching to local backend
00:06:21