This chapter is included in the free preview

Introduction

GraphQL, originally developed at Facebook, is an alternative way to provide an API to query data. It is especially suited for data models that translate to graphs (nodes and edges) easily, but the specification is permissive enough that it can fit any scenario.

While you can deploy a GraphQL-based API on a server, AWS AppSync provides a serverless approach to this. With it, you don't need to think about capacity and load, you only need to define how the API should work and AWS manages the rest. Using it with DynamoDB and Lambda provides a truly serverless GraphQL solution.

This book is a comprehensive, bottom-up approach to learning GraphQL and AppSync. We'll start with the general concepts, such as how graph-based API are different than REST, the most widely used approach, and what are the building blocks of any GraphQL API. Then we'll move to AppSync and see how to configure and deploy a simple application. Then we'll add more and more components and other AWS services, and eventually we'll cover everything you'll need to successfully develop your own apps using this technology stack.

Note

This book is opinionated, so we won't cover every single configuration option available for AppSync or every feature of GraphQL. The topics covered in this book are what I found the most useful when working with AppSync apps. There are links to relevant documentations throughout the book so you'll know where to look if you need anything special.