O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Hands-on Application Building with GraphQL

Video Description

Rapidly build web applications using GraphQL

About This Video

  • A comprehensive but fast and friendly guide to help you learn GraphQL
  • Covers the latest version of GraphQL with fully up-to-date techniques and code examples
  • Shows you how to build robust and fast web applications using GraphQL

In Detail

GraphQL is a data-fetching API developed by Facebook, which has been using it for five years; it powers millions of devices and most components of the Facebook and Instagram website. In this course, you will get an introduction into GraphQL as a bridge for React client application to communicate with servers as the missing data-fetching or query language.

In this course, you will learn how to build your own Trello-like web application using GraphQL. The course starts by teaching you GraphQL basics and comparing it with REST; you will then learn to run queries and specify types in its schema system. The course then shows you how to build a Graphql server and a client UI and connect this Apollo-based client to the server. You will then learn to add features to your board such as adding or editing a task. You will then see how to implement the shared whiteboard functionality by populating the changes into others sessions and how to solve the conflicts in this real-world scenario with concurrent changes from different users. . The course then shows you how to add authentication to your application to prevent unwanted access to it and user centric web service Finally, you will learn troubleshooting typical problems that may occur while running your app, and how to fine-tune the schema and communication of client-server. By the end of the course, you will be able to build your own applications using GraphQL.

All the code and supporting files for this course are available on Github at https://github.com/PacktPublishing/-Hands-on-Application-Building-with-GraphQL

Table of Contents

  1. Chapter 1 : Getting Started with GraphQL
    1. The Course Overview 00:06:25
    2. Comparing GraphQL to REST: Trello Rest API 00:16:48
    3. Starting a Project on Graphcool 00:03:57
    4. Building GraphQL Schema for the project 00:07:21
    5. Working with GraphQL Queries and Types 00:08:24
  2. Chapter 2 : Creating Your Own GraphQL Server
    1. Using the Built-in GraphQL for Analyzing and Verifying the Schema 00:12:28
    2. Adding Some Mocked Data in Your Application 00:05:27
    3. Using Real Trello Data with a REST API 00:10:18
    4. Running Our Own Server Locally 00:08:29
    5. Local GraphQL Server with Database 00:14:09
  3. Chapter 3 : Building the UI Client with a Server Connection
    1. Setting Up a React Application 00:08:48
    2. Creating the UI Components 00:12:40
    3. Integrating Apollo Framework/Apollo Provider 00:15:27
    4. Implementing the GraphQL Fragments 00:09:56
    5. Connecting to Graphcool Cloud-Based Storage Backend 00:14:05
  4. Chapter 4 : Working with Client-Driven Mutations
    1. Exploring the UI for Adding New Cards and New Lists 00:08:15
    2. Connecting to Server, Calling the Mutations for Adding Cards 00:15:32
    3. How the UI Gets Updated: Handle Mutations on the Client 00:20:51
    4. Implementing a UI for Editing Cards and Connecting to the Server 00:14:55
    5. Implementing a UI for Moving Cards and Connecting to the Server 00:17:47
  5. Chapter 5 : Subscriptions: Updating the Board on Changes
    1. Subscriptions: Setting Up and Using in Playground 00:08:55
    2. Client-Side Connection via Web-Sockets 00:06:54
    3. Updating an Existing Card 00:08:21
    4. Advanced Subscription 00:22:03
    5. Updating the Mechanism and Strategy for Concurrent Changes 00:14:34
  6. Chapter 6 : Adding User Authentication
    1. Extending the Server to Enable Authentication and User Management 00:19:57
    2. Add Sign-in, Log In/Out 00:17:51
    3. User’s Boards and More Authorisation 00:25:45
    4. Track and Show Author 00:13:54
  7. Chapter 7 : Troubleshooting, Error Handling, and Tuning
    1. Troubleshooting and Error Handling 00:24:58
    2. Tuning 00:11:19