GraphQL Training

GraphQL Training

Production Ready GraphQL

Length 1 day

What makes an expert? Is it working on the bleeding edge? Is it knowing the tools? Is it having strong opinions? On this day, the journey to a greater GraphQL begins. We are going to introduce the challenges exist out there on the bleeding edge. We are going to introduce the swords that can be used to slay those challenges. We are going to fuel you with the knowledge to develop your own strong opinions. We are going to learn to gracefully orchestrate hundreds (thousands?) of different services and APIs. Everyone seems to want to know about schema stitching, so we are going to make sure you do that before you leave too.

Authorization & Subscriptions

First Thing

Production apps tend to have users, so we'll need to know how to handle their accounts in order to be production ready. We'll start the day by looking at techniques for managing users and handling authorization with GraphQL. We'll examine code for both username and password authorization as well as OAuth with GitHub. Once we have identified users, it will be time to see what they are doing in real time. For that, we'll need to understand what WebSockets are and how they are utilized by GraphQL subscriptions. At this point, you will need to fight the urge to rush home to implement accounts on your side project, because there is more good stuff to come in the day's schedule.

Topics

Authorization TechniquesImplementing Github OAuthWebSocket OverviewConnecting and Disconnecting SubscriptionsPublishing Subscription Data

GraphQL Tools

Before Lunch

If you want to be faster and more efficient than your competitors at building secure, reliable, full stack GraphQL applications, you are going to need to lean on tooling that is already in the ecosystem. In this segment, we introduce dozens of GraphQL tools and goodies for JavaScript developers. Along the way, we will also present the challenges that these tools were designed to solve. Students will leave this portion of the class with an oversized toolbelt full of tools that they can use to solve problems.

Topics

Handling File UploadsIncorporating DirectivesUsing the Apollo DevToolsHandling ErrorsWrangling Caching and BatchingWorking with the Apollo EngineAdvanced Apollo Client TechniquesUsing Security ToolsWhat you can do with the Apollo CLIIncorporating the Apollo VSCode Extension

Apollo Federation

After Lunch

Orchestration is the task of organizing many services under a single API. GraphQL is uniquely positioned to be the ultimate gateway layer in your organization's architecture with Apollo Federation. The techniques that we put to practice in this section are all designed to demonstrate how to use GraphQL at scale. Many of us work on applications with millions, even billions, of users we'll need to understand how to scale GraphQL services for the real world.

Topics

Scaling OverviewApollo FederationMerging SchemasBuilding GraphQL Gateways

Lab: Apollo Federation

End of the Day

Students will put their new skills to the test by composing data from multiple GraphQL microservices.


GraphQL

GraphQL is a query language for your APIs, and GraphQL is everywhere. Whether you're a front-end developer trying to load data predictably into your UIs, a back-end developer looking to wrangle microservices, or a manager hoping to tap into the performance and productivity benefits of GraphQL, we have practical, hands-on courses that will fast-track your progress at creating production-ready services with GraphQL. Learn the latest from the authors of O'Reilly's Learning GraphQL.

"Great job of both answering questions & keeping the pace moving in class!"JavaScript Kickoff Student
Custom Curriculums

Any of our classes can be customized to fit your specific needs. We can create the perfect GraphQL training course for your team. Our materials are designed to be isolated, combined, and rearranged to create the perfect class.