GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data. That sounds nice, but what is GraphQL and how can we use it in .NET?
This workshop will give you the basics for understanding GraphQL and then dive deep into advanced concepts like subscriptions. We will do this by building together a little slack clone and exploring how we can solve the problems of such a service by leveraging GraphQL.
You will learn how to build a GraphQL server in .NET as well as how we can consume GraphQL in Blazor WebAssembly applications.
After this workshop, you will know what GraphQL is. You will know how to build GraphQL servers in .NET and various concepts of building a GraphQL schema.
Let’s get the basics right:
- Introduction to GraphQL
We will explore what GraphQL is and what it is not and how it compares to other service API technologies like REST and gRPC.
- Query Language
What is the query language and how can we apply it?
- Schema Definition Language / Type System
Overview over the GraphQL schema definition language and exploration of the GraphQL type system.
- Schema Design Approaches
We will look at design principles for GraphQL schemas.
Putting GraphQL to use:
- Building a GraphQL Server in .NET
Let’s start applying our GraphQL knowledge! We will take GraphQL for a ride and build
with it step by step a small slack clone that uses a wide range of GraphQL features like subscriptions, filters, persisted queries, and many more things.
- Tools, Tools, Tools
We will try out several GraphQL tools and see what we can do with them and our slack endpoint.
- Building a GUI Blazor for our GraphQL Server
We will pick up Blazor and build with it a simple real-time UI that uses our slack endpoint.
Michael is a Microsoft MVP and the author of the Hot Chocolate project (https://github.com/ChilliCream/hotchocolate), a platform for building GraphQL servers and clients in .NET. For the last three years, this open-source project is his main focus.
Apart from his work in the open-source community, Michael works as a consultant to help companies to move to GraphQL. You can read about the Hot Chocolate project on his blog https://chillicream.com/blog/.