⚠️
This is the documentation for the old GraphQL Mesh version v0. We recommend upgrading to the latest GraphQL Mesh version v1.
Migrate to GraphQL Mesh v1
Migrate to GraphQL Mesh v1
Introduction
GraphQL Mesh is a framework to build GraphQL Gateways on top of GraphQL and non-GraphQL services (REST, gRPC, and more).
Many approaches exist to build a GraphQL Gateway:
- creating an Apollo Server with Apollo DataSource to query sub-services
- creating a GraphQL Gateway from scratch using GraphQL tools (ex:
stitchSchemas()
) - use Apollo Federation
However, most of those approaches require much coding, maintenance or don’t support non-GraphQL sub-services.
GraphQL Mesh has been built with productivity and developer experience in mind.
Building and serving a unified GraphQL schema as a Gateway has never been easier; thanks to many helpful features:
- Consume many API/Sources types (SOAP, REST, GRPC, Databases, and more)
- Embedded performant and extensible GraphQL Server (GraphQL Yoga + Envelop)
- Apply transforms to the unified schema (ex: naming convention)
- Extend the unified schema with custom resolvers
- Caching strategies
- Add mocks for Schema development
Already used in production by community members and some of our clients, GraphQL Mesh is useful for:
- Build a unified GraphQL Schema that follows the industry best practices (schema design, performances)
- Combine multiple GraphQL services as a unified Schema with subscriptions support
- Progressively migrate existing non-GraphQL services under a unified GraphQL API (REST, gRPC, SOAP)
- Quickly give a try to GraphQL by translating an existing REST API to a GraphQL Gateway
Get started by learning the GraphQL Mesh concepts and build your first Gateway!