Know Your Tech Stack

Discover what web technologies do and how they're used all in one place!

GraphQL

What is GraphQL?

A query language for APIs and a runtime for executing those queries, developed by Facebook (Meta). Allows clients to request exactly the data they need, nothing more, nothing less. Features a strong type system, introspection capabilities, and a single endpoint for all data operations. Enables efficient data fetching, reduces over-fetching and under-fetching problems common with REST. Powers APIs for companies like GitHub, Shopify, and Pinterest. Provides a more flexible and efficient alternative to traditional REST APIs.

When to use it

  • Perfect for building APIs where clients have varying data requirements, especially in mobile applications where bandwidth matters.
  • Ideal for applications with complex data relationships or when you want to reduce the number of API calls.
  • Excellent for real-time applications, microservices architectures, and when multiple clients need different views of the same data.
  • Commonly used with React, Apollo Client, and modern frontend frameworks.

When NOT to use it

  • Simple CRUD APIs with consistent data needs - REST is simpler and more straightforward
  • When you need caching at HTTP level - REST works better with standard HTTP caching
  • Small projects with simple data requirements - REST overhead is unnecessary
  • When team lacks GraphQL experience - learning curve and tooling complexity can be challenging

Related Technologies

More in Backend

Learning Resources