graphql-lint review
A focused Rust library and CLI for checking GraphQL SDL naming and deprecation rules.
Reviewed by iTechGuides Editors · Editorial team · Updated Nov 2026
graphql-lint is an open-source Rust tool for developers who need checks on GraphQL SDL schemas. It comes in two forms: a library crate for use from Rust projects and gqlint, a command-line interface for linting. Its published rules cover naming conventions across schema types, fields, arguments, directives, enums, unions, and interfaces. The tool also requires a reason argument when a schema uses the @deprecated directive. This makes it a fit for Rust teams that want repeatable schema checks in a codebase or command-line workflow, rather than a general-purpose API definition linter.
The scope is deliberately specific: the listed checks focus on naming and deprecation, and the category specification identifies GraphQL schema linting rather than OpenAPI or AsyncAPI linting. Custom rules are not supported. Teams needing a tailored policy engine or checks spanning multiple API description formats should look for a broader tool. For projects whose requirements align with its published rules, the combination of a library crate and CLI provides two ways to bring the checks into a workflow without changing the product's narrow focus.
The project is open source and has a free plan, with Linux, macOS, and Windows listed as supported platforms. Deployment is self-hosted, which suits teams that want to run linting within their own development environment. Grafbase also documents a separate GraphQL schema linting workflow in its platform CLI, but that is distinct from graphql-lint/gqlint; buyers evaluating this product should assess the standalone Rust library and CLI on their own terms. Choose graphql-lint when GraphQL SDL naming and deprecation rules are the main need, especially in a Rust project. Choose another option when you need custom rules, broader API-format coverage, or a wider set of published lint checks.
graphql-lint pros and cons
- Where it wins
- Use gqlint for command-line GraphQL SDL linting.
- Embed the library crate in Rust projects.
- Check naming conventions and @deprecated reason arguments.
- Where it doesn't
- Focused on GraphQL SDL rather than OpenAPI or AsyncAPI.
- Custom rules are not supported.
- Its published feature set centers on naming and deprecation checks.
graphql-lint fact sheet, pricing and score →
Advertiser disclosure: iTechGuides is reader-supported. Vendors can pay for top positions in our rankings and for a place on other products' pages, and we may earn a commission when you click some links. Bought places stand at the number bought; this page and our disclosure say so. Paying vendors may get a fuller, more detailed review from our editors, and that review can change their score. How we rank.
Last updated · How we research and update