Introduction
Fullstack GraphQL
In this workshop, we’ll introduce you to GraphQL and the major concepts behind it. We’ll look at how to build a GraphQL server with ASP.NET Core 8 and Hot Chocolate. You’ll learn how to query GraphQL and what tools are out there that can help you explore and manage large schemas. Further, we’ll dive into React and explore how to efficiently build fast and fluent web interfaces using the JavaScript client Relay.
Technologies covered: .NET 8, ASP.NET Core 8, TypeScript, React, GraphQL, Hot Chocolate, Relay
Day 1
09:00 Hello, Tech Check
09:15 Getting Started with GraphQL
- Introduction
- What Is GraphQL?
- Why Use GraphQL?
- The GraphQL type system explained.
- GraphQL operation syntax.
- Your first GraphQL server.
10:00 BREAK (5 min)
10:05 Building a Database Driven Application
- How to build APIs on top of EF Core.
- Paging, Filtering, Sorting and Projections
- Field Middleware
11:00 BREAK (5 min)
11:05 Building APIs with Simple Layering
- Schema building approaches.
- A better approach towards building APIs.
- Paging and Filtering in layered architectures.
- DataLoader
12:00 BREAK (60 min)
13:00 GraphQL Query Patterns and Best Practices
- Exploration of the GraphQL enterprise patterns for building evolvable schemas.
- The GraphQL entity pattern.
- The GraphQL connection pattern
14:00 BREAK (5 min)
14:05 Getting Started with Relay.js
- Introduction to Relay.js
- Executing Queries
- Using Fragments & Arguments
15:00 BREAK (5 min)
15:05 Advanced Fetching Patterns
- Transitions
- Refetching
- Pagination
16:00 BREAK (5 min)
16:05 Understanding Relay
- Relay Store
- Prefetching Data
- Relay Internals
17:00 FINISH
Day 2
09:00 GraphQL Mutations Patterns and Best Practices
- Introduction to GraphQL mutations.
- The GraphQL Mutation pattern.
- Error Patterns in GraphQL mutations
10:00 BREAK (5 min)
10:05 Mutations In Relay
- Mutate data with Relay
- Errors in Mutations
- Optimistic Updates
11:00 BREAK (5 min)
11:05 GraphQL Schema Evolution
- Client Registry
- Schema Registry
- Open Telemetry
12:00 BREAK (60 min)
13:00 Introduction to Distributed GraphQL
14:00 BREAK (5 min)
14:05 Authentication / Authorization
15:00 BREAK (5 min)
15:05 CQRS, DDD and GraphQL, the perfect fit?
16:00 BREAK (5 min)
16:05 GraphQL Subscriptions Patterns and Best Practices
17:00 Q&A
17:30
Important Notice
caution
Code snippets and materials are intended for learning purposes and might contain deliberate omissions. In case of doubt do not hesitate to make questions and check the documentation for further information.