GraphQL by Example

Learn GraphQL by writing full-stack JavaScript applications with Node.js, Express, Apollo Server, React, Apollo Client.
GraphQL by Example
File Size :
1.95 GB
Total length :
5h 31m



Mirko Nasato


Last update

Last updated 12/2022



GraphQL by Example

What you’ll learn

Build a GraphQL server based on NodeJS, Express and Apollo Server
Invoke GraphQL APIs from JavaScript client applications using regular HTTP requests or Apollo Client
Handle Authentication/Authorization, Caching, and more

GraphQL by Example


Good knowledge of modern JavaScript, including ES6+ and NodeJS
Some knowledge of Express and React preferable but not strictly required


More and more teams are choosing GraphQL instead of (or along with) REST for their web APIs. GraphQL queries give clients great flexibility in the way they request data from the server, preventing issues such overfetching or underfetching of data, and allowing multiple resources to be retrieved in a single request.In this course you’ll learn how to use GraphQL both on the server side and in client applications through practical examples in the form of full-stack JavaScript applications. You will be introduced to all the main GraphQL concepts like schema definition, Queries, Mutations, and Subscriptions, as well as to solution to common requirements such as handling authentication/authorization and client-side caching.The examples use Apollo Server with Node.js and Express on the backend and React on the frontend, with GraphQL-Request first, then Apollo Client as GraphQL clients. GraphQL-WS is used for subscriptions.The aim however is not just to cover specific GraphQL libraries, but to give you a more general understanding of the underlying concepts. For instance, GraphQL client libraries are introduced only after learning how to write a simple client “by hand”, to make sure you understand the GraphQL over HTTP format.This course assumes good knowledge of modern JavaScript, and ideally some familiarity with Node.js/Express and React.


Section 1: Introduction

Lecture 1 What is GraphQL

Lecture 2 Pre-Requisites

Section 2: Fundamentals

Lecture 3 Schema Definition Language

Lecture 4 Resolver Functions

Lecture 5 Query Language

Lecture 6 GraphQL over HTTP

Lecture 7 GraphQL Client

Lecture 8 Source Code

Section 3: Queries

Lecture 9 Job Board Project

Lecture 10 Apollo Server for Express

Lecture 11 Source Code

Lecture 12 Custom Type Definition

Lecture 13 Database Resolver

Lecture 14 Field Selection

Lecture 15 Job-Company Association

Lecture 16 GraphQL-Request Client

Lecture 17 React Data Fetching

Lecture 18 Query Arguments

Lecture 19 Query Variables

Lecture 20 Exercise: Company Query

Lecture 21 Company-Jobs Association

Lecture 22 Object Graph Navigation

Lecture 23 Error Handling

Section 4: Mutations

Lecture 24 Mutation Definition

Lecture 25 Input Types

Lecture 26 Mutation Request

Lecture 27 Exercise: deleteJob Mutation

Lecture 28 Exercise: updateJob Mutation

Section 5: Authentication

Lecture 29 Authentication Flow

Lecture 30 Resolver Context

Lecture 31 User-Company Association

Lecture 32 Request Authentication

Lecture 33 Exercise: Secure Update/Delete

Section 6: Apollo Client

Lecture 34 Apollo Client Features

Lecture 35 Apollo Client Installation

Lecture 36 Query Method

Lecture 37 Query Method Variables

Lecture 38 Mutate Method

Lecture 39 Apollo Client Cache

Lecture 40 Fetch Policy

Lecture 41 Cache Manipulation

Lecture 42 Fragments

Section 7: Apollo React Hooks

Lecture 43 useQuery Hook

Lecture 44 Custom Hooks

Lecture 45 useQuery with Variables

Lecture 46 Exercise: useCompany

Lecture 47 useMutation Hook

Lecture 48 useMutation Result

Lecture 49 Exercise: useCreateJob

Section 8: Data Loaders

Lecture 50 SQL Database

Lecture 51 N+1 Query Problem

Lecture 52 DataLoader

Lecture 53 Per-Request Cache

Section 9: Subscriptions

Lecture 54 Chat Project

Lecture 55 Source Code

Lecture 56 Cache updateQuery

Lecture 57 Subscription Definition

Lecture 58 GraphQL-WS Server

Lecture 59 Subscription Resolver

Lecture 60 GraphQL-WS Client

Lecture 61 useSubscription Hook

Lecture 62 WebSocket Protocol

Lecture 63 Connection Params

Lecture 64 WebSocket Server Auth

Section 10: Conclusion

Lecture 65 Congratulations and Bonus

JavaScript developers looking to learn GraphQL

Course Information:

Udemy | English | 5h 31m | 1.95 GB
Created by: Mirko Nasato

You Can See More Courses in the Developer >> Greetings from

New Courses

Scroll to Top