A thought-provoking article about the different approaches for maintaining backward compatibility and their impact on the development lifecycle of APIs. Kay Ploesser provides a thorough comparison between the continuous evolution approach favored by GraphQL with the versioned approach often used in REST APIs.
Libraries and Tools
In this article, Laurin Quast explains the motivations behind response caching and how it works. He also introduces the response cache plugin for Envelop, a wrapper library to extend the GraphQL execution layer.
Detecting and handling errors for GraphQL requests sent over HTTP can be particularly painful. In this article, Giovanni Iacobucci introduces Elucid, an error handling library for express-graphql. He also goes on to explain the motivations behind the library and its future direction.
Obsidian is a lightweight server-side GraphQL caching solution for the Deno runtime. In this article, Jonn Wong mentions the recent features of Obsidian and explains how to get started with the library.
Follow along with David Yappeter in building a custom data validation pipeline with Gqlgen, the schema-first GraphQL library for Golang. In part one, David guides you through setting up the project and creating custom validation with directives.