Production Ready Graphs

Putting your data graph into production doesn’t have to be a guessing game or scary experience. This collection is composed of written and video resources focused on stability, monitoring, schema management, schema design, and best practices.

Backend
GraphOS
How-to

Go from 10,000 feet right to ground level with this mix of guides, books, videos, and tutorials.

Kurt Kemple

Developer Advocate at Apollo

Guide

Principled GraphQL – An Opinionated Guide to Data Graphs

At Apollo, we’ve been building industry leading data graph technology since 2015, and we estimate our software is now used in over 90% of GraphQL implementations. Over the years, we’ve had thousands of conversations with developers implementing GraphQL at companies of all sizes. We want to share what we’ve learned, so we’ve distilled their experiences into a set of best practices for creating, maintaining, and operating a data graph.

Blog post

Announcing the GraphQL at Enterprise Scale Guide [Free Ebook]

GraphQL helps us build apps faster. Data is more discoverable, easier to query, change, and evolve over time. Most companies that adopt GraphQL typically take one of these four patterns: Client-only: Client teams that are excited to take advantage of GraphQL’s client-centric data-fetching capabilities may add a GraphQL API within their own application for the […]

Tutorial

Designing GraphQL Schemas

When you start working with GraphQL, you’ll start to realize that GraphQL is going to change your design process. Instead of looking at your APIs as a collection of REST endpoints, you’ll start looking at APIs as collections of types. Before breaking ground on your new API, you need to think about, talk about, and formally define the data types that your API will expose. This collection of types is called a schema.

Tutorial

Refactoring Your GraphQL Schema

A GraphQL schema is a tool for communication across teams. When we work together to define a schema with the schema definition language, we’re deciding how everyone using our API will consume the data. We want to make it as clear and simple as possible for consumers to send operations to our API without errors.

Blog post

GraphQL Schema Design: Building Evolvable Schemas

This is a guest post by Marc-Andre Giroux, who is currently working on the ecosystem API team at GitHub. He’s been writing and thinking a lot about GraphQL continuous evolution and schema design. His book, Production Ready GraphQL, was released in early March 2020. While GraphQL allows us to continuously evolve our schemas, using deprecations, for example, […]

Guide

A Battle Tested Guide for Backend Developers

Francesca has been working with GraphQL for years at scale, at companies like Trulia and Pinterest, and has been key to a lot of migration and development. In her talk, A GraphQL Guide for Backend Developers, she walks through a lot of very good, battle-tested advice. Since the event wasn’t captured, here’s a brief summary of her talk (taken with her explicit permission).

Panel

From the community
GraphQL In Production Panel – GraphQL Summit 2020

Featuring: Matt DeBergalis, CTO at Apollo (Moderator) Marc-Andre Giroux, Senior Platform Engineer at GitHub Andy Vajda, Tech Lead at American Airlines Mike Byrnes, Principal Software Engineer at Priceline Shruti Kapoor, Senior Software Engineer at PayPal

Docs

Get Started with Apollo Studio

Apollo Studio (formerly Graph Manager) is a cloud platform that helps you build, validate, and secure your organization’s data graph.

Docs

Manage Your Schema with Apollo Studio

The Apollo schema registry is a central hub for managing your data graph. After you register your schema, you can use Apollo Studio to explore the schema’s types and fields, track its change history, and even build and run operations against it.

Docs

Analyzing Your Graph’s Performance with Tracing

Apollo includes a performance monitoring system which, through a single line of configuration, brings insights about the queries being executed against your graph, the fields being used in your graph, the clients making requests against your graph, how long your requests are taking, and more.

Blog post

Who’s Using My Graph?

We’re all used to celebrating big, sparkly successes, like major releases, new customer successes, and the end of a long saga of re-architecture. My favorite kind of success, however, often goes unnoticed: the success of avoiding failure. In our day-to-day lives as engineers, sadly, these events come to pass without much recognition: the sweet quietude of an […]

Blog post

Register Schema Changes Automatically with Schema Reporting

Apollo Graph Manager’s schema registry powers a ton of features that help you explore, maintain, and monitor your data graph. These features are at their most powerful when the schema you register with Apollo stays up to date with the schema you run in production. To help teams keep their schemas synced, we’re excited to […]

Stream

View Your Graph History and Schema Changes with Apollo Studio

On this episode of Mission Briefing Adam Zionts will show Kurt Kemple the new schema reporting features in Apollo Graph Manager like graph history and schema change notifications.

Blog post

Introducing Schema Change Notifications with Apollo Graph Manager

One of the biggest benefits of a GraphQL-powered data layer is the ability to maintain a single schema that continuously evolves to reflect your collection of products and features. As your schema evolves, it’s essential to keep your teams informed whenever you introduce new capabilities or deprecate existing ones. To help with that, we’re delighted to […]

Blog post

Schema Checks: Introducing the New GraphQL CI Tool In Apollo Studio

A Better Way to do CI For GraphQL When deploying code, you want to be sure that nothing will blow up when things go live. To prevent downtime, it’s a good practice to use CI (continuous integration) to run tests, checks, and ensure your app is fully ready to hit production. If you’re running GraphQL […]

Blog post

User roles are now available in Apollo Studio

tldr; at the request of many (and just because we really needed it), you can now assign specific roles to members of your organization in Studio on paid accounts. Please email support@apollographql.com if you’re interested. For years, every user in every organization in Studio has been able to operate with full admin privileges, by default. […]

Book

Production Ready GraphQL

Over the last few years, I helped build and maintain some of the biggest GraphQL APIs out there at both Shopify and GitHub. During those years, I also worked with various companies with their adoption of GraphQL. From my experiences with GraphQL, I’ve observed the good, the bad, and the ugly. This is what lead me to write this book: A collection of learnings and good practices when building GraphQL schemas at scale.

Course

Advanced GraphQL Course

Learn to secure your API with authentication, handle errors within resolvers, and add in integration and unit tests. You’ll also learn to access realtime data using subscriptions and expand on the capability and flexibility of GraphQL with custom directives!