A weekly newsletter of the best news, articles and projects about GraphQL


Deploy a Serverless GraphQL Server with Prisma 2

A guide to deploying a GraphQL server with Prisma and PostgreSQL to the Zeit Now Serverless platform. Prisma is an open-source database toolkit that makes database access easy. Deploying GraphQL to a Serverless platform has benefits as it requires almost no operational effort while offering easy scalability and usage-based pricing. The example covers the full workflow from source code to running deployment and covers some of the challenges associated with Serverless GraphQL deployments.


An Introduction to GraphQL: Subscriptions

Building real-time applications can be made easier with GraphQL subscriptions. In this article, Peter explains what they are and how they work with code samples for a Node.js implementation.

Three awesome tools for GraphQL developer experience

In this post, Natalia shares useful tools for an improved developer experience when developing GraphQL APIs. Covering GraphQL playground, IDE plugins, and the Apollo DevTools browser extension. Check these out if you don't already for a smooth development experience.

The Graph in GraphQL

In a thought-provoking piece, Bogdan delves into the underlying principles behind GraphQL. Follow along to learn more about data structures such as trees and graphs and how they are used in GraphQL to handle requests. Bogdan argues that graphs are a natural fit for APIs as they are expressive in representing the problem space. Moreover, they allow for efficient parallel fetching as is often necessary with relational databases.

Versioning fields in GraphQL

GraphQL APIs evolve together with applications to meet new needs. In this articulate article, Leonardo shows how to version fields as a way to introduce changes while avoiding breaking the API for consumers. Leonardo first explains the challenges with the common evolution strategy whereby you add new fields and deprecate old ones. Then he introduces how field versioning is used to introduce changes to the API using a version argument for fields that are handled by resolvers.