Introduction

Introduction

Welcome to the "GraphQL API Gateway" website where you can learn everything about GraphQL API Gateways, all concepts related to it, and how to build one from scratch.

The website is divided into two main sections. First, we define what a GraphQL API Gateway is, how it works, what patterns we can implement with it, who needs one, and what the benefits are of using one.

Second, we will build a GraphQL API Gateway from scratch, step by step. It's an in-depth guide that will teach you everything from the basics like lexing and parsing to more advanced topics like execution planning and building an execution runtime.

Who is this website for?

The first section of this website is for anyone who wants to learn about GraphQL API Gateways in general. You might be a Software Developer, an Architect, a CTO or even a Product Owner who wants to better understand this topic.

The second section of this website is meant for Developers & Architects who want to dive deep into the topic and learn how to build a GraphQL API Gateway from scratch. We'll be using the Golang programming language in the examples, but this guide will be useful for anyone who wants to build a GraphQL API Gateway in any programming language as we'll be focusing a lot on the concepts and you can skip parts that are specific to Go.

About the author

My name is Jens Neuse (opens in a new tab) and I'm the CEO and Founder of WunderGraph (opens in a new tab). Over the last five years, I've build GraphQL API Gateway solutions for various companies, now running in production and serving millions of requests per day.

I'm also the author of graphql-go-tools (opens in a new tab), a library that implements everything you need to build a GraphQL API Gateway in the Golang programming language, from lexing, to parsing, validation, execution planning, and execution runtime. I've had to refactor this library many times over the years to make it as correct and performant as possible.

This library is now quite mature and became very stable. It's not just the foundation of WunderGraph, but also used by other API Gateway / API Management vendors and companies who built their own custom API Gateway solutions.

As I've been working on this topic for quite some time now, I think it's time to share my knowledge with the community and help others to build their own GraphQL API Gateways or to understand how existing ones work.