graphql-tools is a utility library for building, stitching, and mocking GraphQL schemas using a schema-definition-language-first approach.
The library solves the problem of constructing GraphQL schemas programmatically by allowing developers to define schemas as GraphQL type language strings rather than building them through code. It combines schema definitions with resolver objects that map type and field names to resolver functions, then merges them into an executable schema using the makeExecutableSchema function. This approach supports interfaces, unions, and custom scalars, producing schemas fully compatible with GraphQL.js.
The tool suits teams building GraphQL APIs in JavaScript or TypeScript who prefer declaring schemas declaratively. It works well alongside HTTP server frameworks like GraphQL Yoga, Apollo GraphQL, or express-graphql. Beyond basic schema generation, the library offers fine-grained per-type mocking capabilities for testing and the ability to automatically stitch multiple schemas together into a single larger API. Developers can modularize type definitions and resolvers across multiple files and objects rather than keeping everything in single strings or files.
The project maintains an active contribution process with a documented contributor workflow guide and code of conduct. Development activity shows consistent engagement with bug fixes and feature requests from the community, with maintainers actively reviewing and merging contributions.