November 3 - 4, 2020
GraphQL Galaxy
Online

GraphQL Galaxy 2020

The biggest GraphQL conference in the cloud



This edition of the event has finished, the latest updates of this Tech Conference are available on the Brand Website.
Relational Database Modeling for GraphQL
106 min
Relational Database Modeling for GraphQL
Top Content
WorkshopFree
Adron Hall
Adron Hall
In this workshop we'll dig deeper into data modeling. We'll start with a discussion about various database types and how they map to GraphQL. Once that groundwork is laid out, the focus will shift to specific types of databases and how to build data models that work best for GraphQL within various scenarios.
Table of contentsPart 1 - Hour 1      a. Relational Database Data Modeling      b. Comparing Relational and NoSQL Databases      c. GraphQL with the Database in mindPart 2 - Hour 2      a. Designing Relational Data Models      b. Relationship, Building MultijoinsTables      c. GraphQL & Relational Data Modeling Query Complexities
Prerequisites      a. Data modeling tool. The trainer will be using dbdiagram      b. Postgres, albeit no need to install this locally, as I'll be using a Postgres Dicker image, from Docker Hub for all examples      c. Hasura
But Can Your GraphQL Client Do This? — A Deep-Dive Into urql
37 min
But Can Your GraphQL Client Do This? — A Deep-Dive Into urql
Urql is a GraphQL client for React, React Native, and other frameworks, with first-party support for Next.js, Preact, Svelte, and Vue. It offers flexibility and extensibility through exchanges, including dedupe, cache, and fetch exchanges. Caching, retrying, and authentication are also supported. Urql uses document caching by default but offers a graph cache for normalized caching. It has a small bundle size and a responsive community for support and collaboration.
From a fully featured Apollo Server into no-code GraphQL Mesh with the same functionality
167 min
From a fully featured Apollo Server into no-code GraphQL Mesh with the same functionality
WorkshopFree
Uri Goldshtein
Uri Goldshtein
In this workshop, we will start with a fully featured Apollo Server, that calls multiple data sources. We’ll gradually introduce GraphQL Mesh into that code, seeing all the different benefits. Commits commit we will add type-safety and remove manual code until the last commit, where we will remove all the manual code and stay with just a simple configuration. That way you’ll learn about all the different ways you could use GraphQL Mesh and decide where and how it can best serve you in your existing applications.
GraphQL Anywhere - Our Journey With GraphQL Mesh and Schema Stitching
34 min
GraphQL Anywhere - Our Journey With GraphQL Mesh and Schema Stitching
The Guild has developed various tools for GraphQL, including the GraphQL Code Generator, GraphQL Inspector, GraphQL Modules, GraphQL Tools, and GraphQL Mesh. They have joined the GraphQL Foundation and migrated GraphQLJS to TypeScript. Exciting developments in the GraphQL community include new libraries and directives, such as the GraphQL Web Socket library and the stream and defer directives. GraphQL Mesh allows for converting and merging various sources into GraphQL, providing a distributed solution. The GraphQL Hive registry allows for centralized management of schemas. The talk emphasizes a distributed and gradual approach to adopting GraphQL and the option to choose between schema stitching and Apollo Federation.
GraphQL Observability
8 min
GraphQL Observability
This Talk discusses how to tool Apollo server with open tracing for observability. OpenTracing is a vendor-agnostic format that works well with distributed systems in microservices. It allows for converting GraphQL tracing data to a vendor-agnostic format and enriching information from GraphQL servers. If providers support OpenTracing, it can be easily integrated.
Build Your GraphQL APIs Faster with Nexus Schema
25 min
Build Your GraphQL APIs Faster with Nexus Schema
This Talk discusses the benefits of a code-first approach to building GraphQL APIs using Nexus Schema. It explores how the code-first approach simplifies the development process by allowing the GraphQL schema to be defined in code, providing flexibility and easy modularization. The integration of a real database with Prisma is demonstrated, showcasing the type-safe way to access the database and generate schema definition language and types as artifacts. The Talk also highlights the maturity and growth of GraphQL as a technology and the excitement it brings to the developer community.
GraphQL 2021 Wishlist- The top GraphQL Opportunities & Challenges for 2021
35 min
GraphQL 2021 Wishlist- The top GraphQL Opportunities & Challenges for 2021
GraphQL has not yet reached mainstream adoption and there are still inflection points to cross. Fragments in GraphQL clients need improvement, and non-GraphQL approaches like SWR and Vulkane offer alternatives for automating data fetching. GraphQL clients beyond UI frameworks present challenges, but tools like the GraphQL code generator and Juke offer solutions. Using GraphQL as an intermediate representation and bridging the gap between GraphQL and REST are appealing concepts. Joining graphs and data in different use cases is a challenge, but solutions like a common GraphQL model or programmable API gateway are emerging. Unifying the entire API ecosystem may not be necessary in large enterprises, focusing on specific API endpoints can be more beneficial.
The Next Generation of GraphQL and TypeScript
22 min
The Next Generation of GraphQL and TypeScript
The CTO of the Guild discusses the importance of keeping the GraphQL schema and TypeScript code in sync. They introduce GraphQL Cogen, a tool that generates TypeScript types and code to improve developer experience and type safety. The tool also generates ready-to-use React hooks based on Apollo Client and supports multiple languages and integration with various tools. They also discuss the introduction of Type Document Node, which generates a document node from GraphQL operations. They mention the new string manipulation features in TypeScript 4.1 and the ability to parse GraphQL type definitions with a lexer. They express the need for community help to overcome limitations in TypeScript with parsing complex and multiline strings.
GraphQL for Everyone - Danielle Man
33 min
GraphQL for Everyone - Danielle Man
GraphQL can be the standard way to model and query business data, and it has the potential to go beyond just helping developers. Optimizing GraphQL queries involves mapping them to performant database queries. Translating Druid queries to GraphQL provides flexibility but has challenges with data formatting and query execution. Directives and tools like GraphQL LowDash can transform arrays of objects and provide support for applying functions to queries. Making GraphQL more accessible and integrating it into tools like Tableau can unlock its full potential.
Going from Zero to Building Multi-Region GraphQL Applications
8 min
Going from Zero to Building Multi-Region GraphQL Applications
GraphQL is gaining rapid adoption, providing autonomy for UX developers to retrieve only the data they need. The use of GraphQL subscriptions allows for real-time updates without constant data polling. These features were evaluated in real-world use cases like e-commerce and order management systems.
Using GraphQL on WordPress
26 min
Using GraphQL on WordPress
WordPress, powering 30% of all websites, faces issues with overfetching and underfetching when using its REST API. WPGraphQL, a plugin for WordPress, solves this problem by using GraphQL, reducing API calls and improving scalability. By installing WPGraphQL and writing queries, developers can easily fetch data and transform it for rendering. WPGraphQL has been used by popular websites like qz.com and apollographql.com, and it recently hit 1.0. Gatsby Source WordPress is a faster version of Gatsby that works well with WPGraphQL, and Gatsby can handle building large sites. WPGraphQL does not currently support data subscriptions, but community contributions are welcome. The new Gatsby-sourced WordPress plugin offers benefits like real-time preview and incremental builds.
Server-side Authentication in GraphQL
40 min
Server-side Authentication in GraphQL
Workshop
Roy Derks
Roy Derks
A hands-on workshop about handling authentication and authorization in GraphQL. During this 3 hour workshop you’ll learn how to add authentication to a GraphQL server using JWTs, and handle query responses with user roles. As a bonus we’ll be adding an authentication server with Auth0.The contents:        - Authentication with JWTs        - Handling query responses and user roles        - Auth0Prerequisites:        - JavaScript (preferably TypeScript)        - GraphQL
Native GraphQL, GraphQL as a Database Query Language
8 min
Native GraphQL, GraphQL as a Database Query Language
The Talk introduces NativeGraphQL, which translates a GraphQL query into one FQL query, offering advantages over traditional GraphQL resolvers. The VANA approach to NativeGraphQL avoids the n plus one problem and provides several benefits. FQL is a good fit for NativeGraphQL as it solves the tree traversal problem and offers the same advantages as the rest of the native FQL language. Native GraphQL also provides multi-region scalability, ACID, and transactionality out-of-the-box.
It Depends — Examining GraphQL Myths and Assumptions
25 min
It Depends — Examining GraphQL Myths and Assumptions
Today's talk explores the nuances of GraphQL and how its effectiveness depends on the context. Caching is a polarizing subject in GraphQL, but there are tools available for caching. The trade-off for client-side flexibility in GraphQL affects performance predictability. GraphQL as a backend for frontend offers flexibility but limits true decoupling. It's important to consider the context and trade-offs when deciding whether to use GraphQL or REST. The speaker emphasizes the need for better conversations and understanding the nuances of GraphQL.
Secure Your GraphQL Endpoints With Tyk in 5 Minutes
8 min
Secure Your GraphQL Endpoints With Tyk in 5 Minutes
This lightning talk explores how to secure GraphQL endpoints using Tyke, addressing problems such as authorization, schema security, and protection against denial of service attacks. Tyke provides comprehensive security features without the need for additional plugins. It supports various authentication modes, rate limiting, throttling, and query depth limiting. The demonstration shows how Tyke and GraphQL can easily secure APIs by adding authorization headers, restricting access to specific fields, and enforcing query depth limits.
Building a Highly Scalable Cloud API Gateway
31 min
Building a Highly Scalable Cloud API Gateway
This Talk discusses building a highly scalable cloud API gateway with GraphQL using AWS AppSync. It covers the challenges of scalability, developer velocity, and cost in building APIs. The Talk provides a step-by-step guide on building a cloud API gateway using CDK and AppSync, including defining the schema, configuring data sources and permissions, creating resolvers, and deploying the API. It also highlights the flexibility and trade-offs of using AWS AppSync, testing GraphQL Lambdas, and the portability of the solution. The learning curve of AppSync has improved over time, and future updates are planned to further simplify the process.
The Diminishing API Layer
30 min
The Diminishing API Layer
The Talk discusses the evolution of code and data coupling, the challenges of managing code and API complexity, and the rise of GraphQL as a solution. It explores the power of directives in GraphQL and their ability to preprocess and post-process requests and responses. The at lambda directive is highlighted as a way to implement fields in JavaScript. The Talk also touches on the benefits of working from home and the flexibility of placing directives in various parts of a GraphQL schema.
Let's Talk GraphQL With Your Services
28 min
Let's Talk GraphQL With Your Services
This talk explores the use cases for GraphQL with existing services and legacy code, focusing on an e-commerce platform. It discusses the challenges of using REST and the benefits of using GraphQL. The talk covers different approaches to implementing GraphQL with existing services, such as using libraries like GraphQL Mesh or creating a custom data layer. It also discusses the importance of mapping data specifications to a GraphQL schema and creating resolvers. The talk concludes by highlighting the benefits of using GraphQL for client-facing applications.
Security Testing for GraphQL Backed Applications
7 min
Security Testing for GraphQL Backed Applications
I'm Ryan Severns, COO of StackHawk, an application security testing tool that focuses on GraphQL. StackHawk offers active automated testing of GraphQL endpoints to find potential security vulnerabilities. The tool integrates with developer tools like Slack and Jira for easy vulnerability management and bug fixing. It provides detailed information, including request, response, and curl command, for debugging. StackHawk offers free single user accounts and team trials, and visitors can find more information at their booth in GraphQL Galaxy.