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

Rethinking REST: A hands-on guide to GraphQL and Queryable APIs

Video Description

4+ Hours of Video Instruction

Since being released by Facebook, GraphQL has been adopted as the API standard of choice by companies such as GitHub, Yelp, Intuit, and the New York Times. GraphQL improves upon REST APIs by providing an explorable and self-documented way of getting exactly the data you need for your application. Whether you're working on a mobile app or a dashboard view, no matter how small or large the project, GraphQL is an important new tool for any application developer to know.

Description

This 4+ hour LiveLesson video course provides a thorough overview about the why's, what's, and how's of GraphQL, an API query language that has been making waves in the developer community. Given its potential to become the new standard for creating data APIs, this video series will give you the tools to discuss its pros and cons and implement it in a project.

The lessons start with a high-level introduction to the language, its features, and best practices for creating a production-ready API. In the latter part, the lessons provide guided tutorials for creating a GitHub dashboard using their existing API and building your own GraphQL API from scratch using either the Node.js or Django frameworks.

Download the related files from http://www.informit.com/store/rethinking-rest-a-hands-on-guide-to-graphql-and-queryable-9780135381441.

About the Instructor

Arianne Dee is a software developer and educator from the University of British Columbia. She loves Python for its versatility and community, and GraphQL because it makes APIs fun and intuitive. She is an instructor for Canada Learning Code and a maker at MakerLabs in Vancouver, BC. While working as a back-end developer at 7Geese, she worked on creating their GraphQL API in Django. Since then, she has done training, spoken at conferences, and developed her own GraphQL server library for Django.

Skill Level

  • Beginning to Intermediate

What You Will Learn

  • Learn all about GraphQL and its core features
  • Learn how to consume a GraphQL API by building a simple Github client
  • Build a GraphQL API from scratch in your choice of Node.js or Django
  • Learn how to use the GraphiQL app to improve your GraphQL workflows
  • Explore working with GraphQL mutations and directives
  • Learn best practices for production environments: pagination, security, and caching

Who Should Take This Course

  • Django or Node developers who want to learn how to get started building a GraphQL API
  • Front-end developers who want to learn how to consume GraphQL APIs and use its rich set of features
  • Other back-end developers who want to learn the basics of GraphQL before building an API in their desired language/framework

Course Requirements

  • Experience consuming and/or creating RESTful APIs
  • Knowledge of JavaScript and minimal ES6 syntax
  • Experience with Node.js or Django frameworks (optional)
  • If you are hoping to develop a GraphQL server in another framework, make sure that it has a supported library here: http://graphql.org/code/

Table of Contents

Introduction
Lesson 1: Explore GraphQL
Lesson 2: Learn the Features of GraphQL
Lesson 3: Understand Recommended Practices
Lesson 4: Build a Client (with Github)
Lesson 5: Introduction to Building a GraphQL Server
Lesson 6: Build a Server in Node.js using Express-GraphQL
Lesson 7: Build a Server in Django using Graphene
Summary

About Pearson Video Training

Pearson publishes expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. These professional and personal technology videos feature world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, Pearson IT Certification, Prentice Hall, Sams, and Que Topics include: IT Certification, Network Security, Cisco Technology, Programming, Web Development, Mobile Development, and more. Learn more about Pearson Video training at http://www.informit.com/video.

Table of Contents

  1. Introduction
    1. Rethinking REST: Introduction 00:01:50
  2. Lesson 1: Explore GraphQL
    1. Learning objectives 00:01:07
    2. 1.1 Learn what GraphQL is all about 00:07:08
    3. 1.2 Discover why GraphQL was created 00:06:59
    4. 1.3 Explore a GraphQL API with the GraphiQL app 00:07:54
    5. 1.4 Understand how GraphQL and REST differ 00:09:04
  3. Lesson 2: Learn the Features of GraphQL
    1. Learning objectives 00:01:14
    2. 2.1 Query a GraphQL schema 00:08:48
    3. 2.2 Change data with GraphQL mutations 00:10:10
    4. 2.3 Understand directives and introspection 00:07:09
  4. Lesson 3: Understand Recommended Practices
    1. Learning objectives 00:01:29
    2. 3.1 Understand pagination options 00:08:34
    3. 3.2 Consider security 00:11:23
    4. 3.3 Consider performance 00:05:32
  5. Lesson 4: Build a Client (with Github)
    1. Learning objectives 00:01:23
    2. 4.1 Set up the project 00:04:20
    3. 4.2 Hello world: Making GraphQL requests 00:08:16
    4. 4.3 Create a repository dashboard 00:17:14
    5. 4.4 Working with mutations 00:15:53
  6. Lesson 5: Introduction to Building a GraphQL Server
    1. Learning objectives 00:01:21
    2. 5.1 Look at the project overview 00:04:56
    3. 5.2 Understand the anatomy of a server 00:06:17
    4. 5.3 Consider available libraries 00:03:16
  7. Lesson 6: Build a Server in Node.js using Express-GraphQL
    1. Learning objectives 00:01:07
    2. 6.1 Set up the project 00:08:01
    3. 6.2 Define the queries 00:26:31
    4. 6.3 Add filters and pagination 00:13:22
    5. 6.4 Define mutations 00:13:40
  8. Lesson 7: Build a Server in Django using Graphene
    1. Learning objectives 00:01:08
    2. 7.1 Set up the project 00:08:06
    3. 7.2 Define the queries 00:14:07
    4. 7.3 Add filters and pagination 00:13:56
    5. 7.4 Define mutations 00:11:45
  9. Summary
    1. Rethinking REST: Summary 00:01:09