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

Articles

Apollo Connectors: Blazing-Fast Integration with REST APIs

Apollo Connectors simplify the process of building a GraphQL API by seamlessly integrating non-GraphQL services. With a straightforward declarative syntax embedded directly in your schema files, developers can effortlessly link GraphQL fields to HTTP APIs.

More expressive schemas with @oneOf

In this post, Benoit discusses the @oneOf directive, explaining how it brings polymorphism to input types and its current experimental support in Apollo Kotlin v4. Discover how this feature can improve your GraphQL schemas by allowing mutually exclusive fields and enhancing type safety.

Maximizing PIM Efficiency with GraphQL APIs

Explore how GraphQL APIs can maximize PIM efficiency by enabling flexible data queries and reducing over-fetching. This approach streamlines product data management, making it easier to integrate with multiple front-end applications. Checkout the full article for more details.

Articles

Celebrating GraphQL Conf 2024

GraphQL Conf 2024 was electric! The event buzzed with exciting developments in AI, data mesh, federation, and next-gen GraphQL security. Attendees soaked up hands-on workshops and top-notch talks while making meaningful connections. The big news? GraphQL Conf 2025 heads to Europe! Get the full scoop

The State of GraphQL Security in 2024

GraphQL security is a hot topic in 2024, with risks like resource abuse and configuration issues taking center stage. The evolving threat landscape calls for smarter defenses, including input validation, rate limiting, and cutting-edge tools. Staying proactive is the key to keeping your GraphQL APIs safe. Dive into the latest security insights and best practices

Articles

All-in on GraphQL: the future of app development at Shopify

Shopify is all in on GraphQL, they made their GraphQL API the definitive API for all things Shopify and marked their REST API as legacy. If you're interested in why they made that decision and what's next, make sure to read the article!

Exploring GraphQL: Benefits and Comparisons with Other API Protocols

In "Exploring GraphQL: Benefits, Comparisons, and Other API Protocols" by Haridas Kanure, the author compares GraphQL with other API protocols like RESTful APIs and gRPC. The article highlights the key benefits of using GraphQL, including: strongly typed queries for better error handling, the ability to fetch multiple related resources in a single request, and support for real-time updates through subscriptions The author also discusses the advantages of GraphQL over traditional RESTful APIs, such as reduced latency and improved query flexibility. Additionally, Kanure provides an overview of gRPC, a high-performance RPC framework, highlighting its strengths in terms of performance and scalability. The article concludes by emphasizing the importance of choosing the right API protocol for specific use cases, depending on factors like data complexity, traffic volume, and development constraints.

Articles

Understanding GraphQL Caching Mechanisms

In "Understanding GraphQL Caching Mechanisms," Oleksandr delves into the world of GraphQL caching, exploring its importance and various mechanisms. The article explains how caching can significantly improve the performance and scalability of GraphQL APIs, reducing the load on servers and speeding up response times. The author discusses different caching approaches, including client-side caching with Apollo Client, the various Apollo server-side caching options, and hybrid caching that combines both strategies. Additionally, the article highlights common challenges and best practices for implementing effective caching in GraphQL applications, making it a valuable resource for developers looking to optimize their API performance.

Articles

Demystifying GraphQL Subscription Testing: A Step-by-Step Tutorial

In "Demystifying GraphQL Subscription Testing: A Step-by-Step Tutorial" by Shivam Bharadwaj, developers can learn how to effectively test GraphQL subscriptions. The article provides a comprehensive guide on the process, starting with setting up a testing environment and creating a subscription schema. It then delves into topics such as mocking dependencies, handling concurrent requests, and verifying subscription logic. The author emphasizes the importance of testing GraphQL subscriptions, highlighting common pitfalls and challenges that can arise during development. By following this step-by-step tutorial, developers can ensure their GraphQL APIs are robust and reliable, providing a seamless experience for users.

A Detailed Guide to Performance Testing GraphQL and WebSocket APIs with JMeter

In "A Detailed Guide to Performance Testing GraphQL and WebSocket APIs with JMeter" by Mahtab Haider, developers can learn how to optimize the performance of their GraphQL and WebSocket APIs. The article provides a hands-on guide on using Apache JMeter to simulate a large number of concurrent requests and measure the API's response time, throughput, and error rates. The author explains how to configure JMeter for GraphQL and WebSocket testing, including setting up request bodies, headers, and variables. Additionally, the article covers common pitfalls and best practices for performance testing, such as handling authentication and rate limiting, making it a valuable resource for developers looking to ensure their APIs can handle high traffic and user loads.

Articles

Audit of GraphQL Gateways Supporting Apollo Federation

The Guilds Kamil Kisiela recently did a deep dive into Apollo Federation, GraphQL Gateways that (claim to) support Federation and the state of that support. He looked at the added complexity of Federation for developers and maintainers alike and helped pick the right tool for the job if you're looking to adopt Federation.

Live from the GraphQL Conf: The State of Distributed GraphQL 2024

In "The State of Distributed GraphQL 2024" by Jens Neuse, Founder and CEO of WunderGraph, the current landscape of distributed GraphQL is examined. The article highlights the growing adoption of GraphQL as a unifying force for APIs, emphasizing its ability to simplify and accelerate integration between multiple services. Rauch shares his insights on the latest trends, including the rise of Gateway-as-a-Service architectures, and discusses the challenges and opportunities presented by this shift.

Stellate has been acquired! 🎉

Stellate recently announced they had been acquired! TL;DR: The Guild is acquiring the product and will be the new home for the product and all customers, while Stellate's technical team is joining Shopify to work on global storefront performance.

Articles

Why We Chose GraphQL for the Catio Console

In "Why We Chose GraphQL for the Catio Console" by Matt Kharrl shares his team's experience in selecting GraphQL as the API technology for their Catio application. The article highlights the benefits of using GraphQL, including its ability to simplify complex data relationships and provide a more intuitive query mechanism. Matt notes that GraphQL allows for a more flexible and scalable architecture, making it an ideal choice for building a robust and performant API. Additionally, he emphasizes the importance of schema-driven development, which enables developers to define the structure of their API upfront, ensuring consistency and reducing errors.

Hard-Earned Lessons on DDD, NDD, & GraphQL from a Battle-Tested Architect

Mike Dyer reflects on his experience applying Domain-Driven Design (DDD), Narrativ-Driven Development (NDD) principles, and GraphQL to complex software systems. Mike shares valuable insights on how to effectively model business domains, emphasizing the importance of identifying and separating core and supporting subdomains. He also highlights the benefits of using GraphQL for querying complex data models, citing its ability to simplify API development and improve performance. Additionally, he discusses the challenges of integrating GraphQL with DDD and NDD principles, offering practical advice on how to overcome common pitfalls and achieve a more scalable and maintainable architecture.

GraphQL with Azure Functions

Sachin Nandanwar explores the combination of GraphQL and Azure Functions to build scalable and efficient APIs. Sachin demonstrates how to integrate GraphQL with Azure Functions using the GraphQL Server library, highlighting its ease of use and flexibility. He also shares best practices for handling errors, implementing authentication and authorization, and optimizing performance in this setup. The article provides a step-by-step guide on building a simple GraphQL API using Azure Functions, making it an excellent resource for developers looking to leverage the strengths of both technologies.

Articles

Implementing GraphQL with Type Safety in Next.js 14 App Router

In "Implementing GraphQL with Type Safety in Next.js 14 App Router" Sagar Dhami explores how to integrate GraphQL into a Next.js application using the new App Router feature. Specifically, Dhami focuses on implementing type safety for GraphQL resolvers, ensuring that data is accurately fetched and validated within the API. By leveraging TypeScript and the `@types/graphql` package, developers can define strong types for their GraphQL schema, making it easier to catch errors and maintain a robust application architecture.

Large Results from a GraphQL API and Google BigQuery

In "Large Results from a GraphQL API and Google BigQuery" on Nerd For Tech, the author delves into strategies for efficiently handling large result sets in a GraphQL API. Alexander looks into various options such as pagination and streaming data from Google BigQuery, their pros and cons and how developers can optimize their API's performance when dealing with massive datasets, ensuring scalability and responsiveness for users. The article highlights the importance of carefully designing APIs to handle big data and provides practical advice on implementing scalable solutions.

Launching Hasura DDN: The world's first metadata-driven data access layer

The Hasura team introduces a significant enhancement to their GraphQL platform: Dynamic Data Normalization (DDN). This feature allows developers to define complex data transformations and aggregations within their GraphQL schema, enabling seamless manipulation of data at query time. With DDN, users can build more sophisticated APIs that efficiently handle diverse data formats, making it easier to integrate with various backend systems and achieve a unified data model.

Articles

Supercharge Your App: Real-Time Updates with GraphQL Subscriptions 🚀💡

In "Supercharge Your App: Real-Time Updates with GraphQL Subscriptions", the author explores how to leverage GraphQL subscriptions to deliver real-time updates in modern applications. By using WebSockets and GraphQL's subscription feature, developers can establish bidirectional communication between clients and servers, enabling instant notifications and seamless updates without requiring full-page reloads. The article delves into best practices for implementing subscriptions in a scalable and efficient manner, ensuring that users receive timely information without compromising app performance or stability.

Using Data Loaders for Efficient GraphQL Queries in NestJS

In "Using Data Loaders for Efficient GraphQL Queries in NestJS", author Kelisha Patel demonstrates how to optimize GraphQL queries using data loaders in a NestJS application. By implementing data loaders, developers can efficiently batch and cache data requests, reducing unnecessary database queries and improving overall performance. The article provides a step-by-step guide on integrating data loaders with the `@nestjs/graphql` package, showcasing how this approach can significantly enhance query efficiency and scalability in GraphQL-based applications.

GraphQL security: 7 common vulnerabilities and how to mitigate the risks

In "GraphQL Security: 7 Common Vulnerabilities and How to Mitigate the Risks", Agata Witkowska highlights critical security concerns associated with GraphQL APIs. The article identifies seven common vulnerabilities, including query exhaustion, schema exposure, and authentication bypass, which can compromise the integrity and confidentiality of sensitive data. To mitigate these risks, developers are advised to implement robust access control mechanisms, validate user input, and regularly review and update their GraphQL schemas to ensure they remain secure and compliant with evolving security standards.

Bulletproof GraphQL polling

In "Bulletproof GraphQL Polling", Sophia Willows presents a robust approach to implementing polling in GraphQL applications, addressing common pitfalls and limitations. The article highlights the importance of properly handling query intervals, caching, and timeouts to ensure seamless updates and minimize unnecessary requests. By leveraging techniques such as exponential backoff and queueing, developers can create more efficient and scalable polling mechanisms that maintain a healthy balance between real-time data delivery and server resource utilization.

Articles

How Tailcall statically identifies N+1 issues in GraphQL

The article discusses how Tailcall's system identifies N+1 issues in GraphQL by using a configuration-driven approach rather than handwritten resolvers. It explains the process of static analysis using a graph data structure and a Depth-First Search (DFS) algorithm to detect inefficient query patterns. Optimizations such as memoization and a custom "Chunk" data structure enhance performance, especially for large configurations. These strategies help ensure efficient and accurate identification of potential performance bottlenecks in GraphQL schemas.

How We're Preventing Breaking Changes in GraphQL APIs at Buffer — and Why It's Essential for Our Customers

Buffer is taking significant steps to prevent breaking changes in its GraphQL APIs, ensuring that their APIs remain stable and reliable for customers. By focusing on backward compatibility, careful schema design, and introducing strict validation tools, Buffer aims to avoid disruptions in their services. This stability is essential to maintain trust and provide a consistent experience for developers integrating with their platform, which ultimately benefits end-users who rely on Buffer's services for their social media management needs.

Streamlining GraphQL Service Testing with Karate

Trivago has enhanced its testing process for GraphQL services using the Karate framework, which is integrated with Docker and Justfiles. This setup allows for more reliable deployment through automated tests, parallel execution, and continuous integration pipelines. The approach helps ensure that changes don't break the production environment, especially in a microservices architecture, by rigorously testing across multiple environments before full deployment.

The State of GraphQL Security 2024

This report provides a thorough analysis of public GraphQL APIs, highlighting main vulnerabilities and the risks they pose. By understanding these security challenges, organizations can proactively protect their GraphQL APIs.

Articles

Build GraphQL-powered Generative AI applications with Amazon Bedrock and AWS AppSync

In this article, Ike Gabriel Yuson delves into the intersection of GraphQL and generative AI, demonstrating how Amazon Bedrock and AWS AppSync can be leveraged to build scalable and extensible applications. The author illustrates the benefits of using GraphQL's flexible schema and query capabilities to seamlessly integrate AI-generated content with existing data sources. By exploring real-world use cases and best practices, this article provides a comprehensive guide for developers seeking to harness the power of GraphQL in their generative AI projects.

Partial Query Caching + @defer to Stream Partial Cache Hits to the Client Immediately

For over a year Stellate has been shipping iterations of partial query caching (PQC), a feature set that leverages GraphQL’s novel structure to improve performance. Performance means different things to different people, but they’ve been building for two roles in particular: engineers and end-users (users). They’ve already shipped big wins for developers with PQC, but it only benefited users in specific scenarios. Today, they’re introducing native support for PQC + @defer so that everyone wins.

Mastering GraphQL Server Implementation with Ballerina

In this article, the author provides a comprehensive guide to implementing a GraphQL server using Ballerina. The article delves into the benefits of using Ballerina for building scalable and efficient GraphQL servers, highlighting its strengths in handling concurrent requests and providing robust error handling. With a focus on real-world examples and best practices, the author walks readers through the process of setting up a GraphQL schema, defining resolvers, and integrating with databases. By mastering Ballerina's GraphQL implementation, developers can build robust and performant APIs that seamlessly integrate with their existing technology stacks.

Articles

A Guide on GraphQL Authorization

This is a somewhat older but still important article. GraphQL authorization is crucial for building secure APIs. The author emphasizes GraphQL's flexibility, enabling developers to fetch only the data needed while maintaining granular control over access permissions. The guide explores various authorization methods, including JWT authentication and role-based permissions. It highlights the importance of testing and monitoring authorization logic to ensure its effectiveness in protecting sensitive data.

Note: The Challenges with Client Controlled Nullability

In his latest note, Jordan Eldredge dives into one of his first projects after joining the Relay team. He worked on a @required directive, which allowed clients to specify how to handle possible null values. Teams at Yelp and Netflix worked on something similar, resulting in the Client Controlled Nullability spec proposal.

Articles

GraphQL Growth Explodes but so Do Problems Federated Graphs Solve

GraphQL's popularity has soared, leading to rapid growth in adoption. However, this surge in usage has also brought challenges, with scalability and data management becoming bottlenecks. Enter federated graphs. This architecture enables decentralized data storage across multiple GraphQL APIs, addressing scalability limitations and enhancing data management efficiency. By distributing data ownership and reducing the burden on central servers, federated graphs empower developers to handle the expanding volume of GraphQL data without compromising performance.

Adding Retrieval-Augmented Generation (RAG) to Your GraphQL API

In a bid to enhance GraphQL API performance, Adam introduces Retrieval Augmented Generation (RAG). This technique leverages existing GraphQL data structures and avoids unnecessary round trips to the database. By caching relevant fragments and selectively fetching data only when necessary, RAG minimizes response times and improves scalability. This simplifies API development by reducing the need for complex caching logic and optimizing data retrieval processes.

Measuring Impact: A guide to the ROI on GraphQL

Measuring the impact of GraphQL can be challenging, but it's crucial for understanding its effectiveness and optimizing deployments. On the Hasura blog, Sandip explores various methods for quantifying the return on investment (ROI) associated with GraphQL adoption. The author emphasizes the importance of tracking metrics related to performance, developer productivity, and user experience. By analyzing data on request counts, execution times, and schema complexity, businesses can assess the efficiency and value of their GraphQL implementations. This guide provides practical guidance on identifying relevant metrics, tracking changes over time, and correlating GraphQL adoption with business outcomes.

Articles

Navigating backwards compatibility in GraphQL

GraphQL's backwards compatibility features empower developers to maintain code stability across releases. Author Preston Pham explores how these features can be leveraged to seamlessly evolve APIs without breaking existing client applications. Preston demonstrates how to utilize schema mutations and optimistic updates to gracefully handle API changes, ensuring seamless transitions for both developers and users.

How To Work With GraphQL In WordPress In 2024

In a practical guide for WordPress developers, author Leonardo Losoviz investigates the workings of GraphQL in the context of WordPress. He explains how GraphQL simplifies data fetching from WordPress, enabling developers to build performant and flexible frontend applications. He highlights the advantages of using GraphQL over traditional REST APIs, emphasizing its improved data fetching efficiency and schema-driven approach. Losoviz provides step-by-step instructions on implementing GraphQL in WordPress, making it accessible to both beginners and experienced developers.

API Testing Trends 2024

In their article, "API Testing Trends 2024," the authors delve into the evolving landscape of API testing. They argue that GraphQL testing poses unique challenges due to its schema-driven approach and real-time data fetching. They explore various testing tools and techniques specifically tailored for GraphQL APIs. They emphasize the importance of mutation testing and introspection for ensuring comprehensive coverage. The authors conclude by highlighting the need for continuous testing and feedback loops in the GraphQL development process.

A brief history of web development. And why your framework doesn't matter.

From static pages to interactive applications, the history of web development has been a constant evolution. Author Bahaa Zidan explores the key milestones that have shaped the field, from the emergence of client-server architecture to the rise of JavaScript frameworks. The author emphasizes the pivotal role of GraphQL in enabling flexible and decentralized data fetching, significantly impacting modern web development. Zidan argues that GraphQL represents a paradigm shift, empowering developers to build scalable and adaptable applications that meet the demands of today's dynamic web landscape.

Articles

GraphQL Trusted Documents

GraphQL enthusiasts will appreciate Benjie's exploration of trusted documents in GraphQL. The article dives into the importance of verifying data integrity and authenticity in GraphQL APIs. Benjie highlights how trusted documents can be used to establish secure communication between clients and servers, ensuring that only authorized and validated data is processed. This insightful piece emphasizes the role of trusted documents in enhancing GraphQL's already robust security features.

Distributed GraphQL Subscriptions with NATS and Event Driven Architecture

In their article on distributed GraphQL subscriptions with NATS and event-driven architecture, WunderGraph explores the challenges of real-time data updates in decentralized systems. The author argues that traditional polling approaches are inefficient for large audiences, proposing an event-driven architecture powered by NATS. This approach enables subscribers to receive immediate notifications of data changes through GraphQL mutations. The article dives into the technical implementation of this architecture, emphasizing the role of NATS as a lightweight messaging platform.

All you need to know about GraphQL Security [Infographic]

The escape team created an infrgraphic summarizing the key aspects of GraphQL Security. It's a valuable resource for beginners and experienced developers alike to grasp the fundamental concepts of GraphQL in a concise visual format.

Articles

GraphQL's unique value proposition

In their recent article, "GraphQL's Unique Value Proposition," Tailcall argues that GraphQL stands out for its ability to decouple data access from UI development. This separation empowers developers to build flexible and scalable APIs while fostering independent team collaboration. Unlike REST APIs, which often force developers to overfetch data or implement cumbersome pagination strategies, GraphQL offers a more efficient and user-friendly approach. By fetching only the data needed for a specific query, GraphQL minimizes network traffic and improves performance. This empowers developers to build responsive and efficient applications without compromising data integrity.

Why GraphQL - How Yelp helps internal teams promote the use of GraphQL

Yelp's "Why GraphQL?" guide explores the core tenets of GraphQL and emphasizes its advantages over traditional REST APIs. The document highlights GraphQL's flexible data fetching capabilities, which empower developers to request only the data needed for a specific query. This eliminates unnecessary data overfetching and optimizes performance. Additionally, GraphQL's schema-first approach fosters clarity and collaboration among teams by clearly defining data structures before development begins. This eliminates ambiguity and simplifies collaboration between backend and frontend engineers.

You probably don't need GraphQL 🤔

Max argues that GraphQL represents a paradigm shift in data fetching. Traditional REST APIs often burden developers with unnecessary data overfetching and inefficient pagination strategies. In contrast, GraphQL empowers developers to request only the data required for a specific query, minimizing network traffic and improving performance. This flexibility fosters a more responsive and efficient development experience. Additionally, GraphQL's schema-first approach promotes clarity and collaboration by explicitly defining data structures before development commences.

Feeling nerdy? Query issues of GraphQL Weekly, with GraphQL itself!
Powered by the GraphQL Playground
Enter a query
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
  allIssues {
    id
    title
    published
    number
    date
    author {
      avatarUrl
      description
      name
    }
  }
}
or press CMD + Enter
Result
Curated by Stellate, and the awesome GraphQL community.