EVERYTHING XIAOMI
Get listed

async-graphql

async-graphql is a free, open-source Rust library for running a self-hosted GraphQL server.

Place
#21 of 32
Score
5.4
async-graphql's website

What async-graphql is

async-graphql is a free, open-source Rust library for running a self-hosted GraphQL server. It follows the GraphQL specification and most of its extensions, with support for both static and dynamic schemas. Developers define schemas in Rust, while procedural macros generate code for GraphQL queries. The library provides async/await and type safety, plus custom scalars, multipart file uploads, WebSocket subscriptions, batch queries, custom extensions, and error extensions. Apollo features include Persisted Queries, Tracing, and Federation v2. Server integrations are provided for Poem, Actix-web, Warp, Rocket, and Axum. GraphiQL integration is enabled by default, while most other crate features are disabled unless selected. The crate forbids unsafe code and is described as implemented in 100% safe Rust. Rust 1.86.0 or later is required. It is licensed under Apache License 2.0 or MIT at the user's option. The project recommends limiting query complexity and depth in production to help reduce denial-of-service risk. An Async-graphql Book provides documentation, and the project names several production users.

Good

  • Free open-source licensing
  • Static and dynamic schemas
  • Apollo Federation v2 support
  • Multiple Rust web integrations
  • Safe-Rust implementation

Watch out

  • Requires Rust 1.86.0 or later
  • Self-hosted deployment
  • Most crate features are disabled by default

Who it suits

It suits Rust developers building self-hosted GraphQL services that need specification support, asynchronous execution, and integrations with several Rust web frameworks.

Verdict

async-graphql offers a broad GraphQL server toolkit for Rust applications. Its schema options, Apollo support, and framework integrations give developers several ways to assemble a self-hosted service.

The facts

Each one read from async-graphql's own pages, with the date it was checked.

What it does

Apollo support
The library lists Apollo Persisted Queries, Apollo Tracing, and Apollo Federation v2 support.checked 9 Oct 2026
Async and type safety
The feature list includes async/await support and type safety.checked 9 Oct 2026
Documentation
The project links to an Async-graphql Book describing the library as a Rust server-side library compatible with the GraphQL specification and most extensions.checked 4 Oct 2026
GraphiQL
The crate's GraphiQL integration is enabled by default; most other crate features are not activated by default.checked 4 Oct 2026
GraphQL capabilities
Listed capabilities include custom scalars, multipart file uploads, WebSocket subscriptions, batch queries, and custom extensions.checked 9 Oct 2026
Intended users
The README lists Vector, DiveDB, Kairos Sports tech, AxieInfinity, and other projects as using async-graphql in production.checked 9 Oct 2026
License
The project is licensed under either Apache-2.0 or MIT, at the user's option.checked 9 Oct 2026
Optional crate features
Most crate features are disabled by default; the README names GraphiQL integration as the exception.checked 9 Oct 2026
Product
async-graphql is a GraphQL server library implemented in Rust.checked 9 Oct 2026
Production query safety
The project recommends limiting query complexity and depth in production to help avoid possible denial-of-service attacks.checked 4 Oct 2026
Purpose
async-graphql is a high-performance, specification-compliant GraphQL server library implemented in Rust.checked 4 Oct 2026
Query capabilities
Features include multipart file uploads, WebSocket subscriptions, batch queries, custom extensions, and error extensions.checked 4 Oct 2026
Rust requirement
The minimum supported Rust version is 1.86.0 or later.checked 9 Oct 2026
Rust safety
The crate forbids unsafe code and says it is implemented in 100% safe Rust.checked 4 Oct 2026
Safe Rust
The crate forbids unsafe code and describes its implementation as 100% safe Rust.checked 9 Oct 2026
Schema definition
You can define a schema in Rust, and procedural macros automatically generate code for a GraphQL query.checked 9 Oct 2026
Schema types
Static and dynamic schemas are supported.checked 9 Oct 2026
Security guidance
The README recommends limiting query complexity and depth in production to help avoid DDoS attacks.checked 9 Oct 2026
Specification support
The library is fully compatible with the GraphQL specification and most of its extensions.checked 9 Oct 2026
Web server integrations
Provided integrations are listed for Poem, Actix-web, Warp, Rocket, and Axum.checked 9 Oct 2026

Alternatives to async-graphql

All alternatives
  1. 1

    Altair GraphQL Client

    Free planWebExtensionLinuxmacOS
    7.4From $7.99 a month
  2. 2Apollo Client logo

    Apollo Client

    Free planAndroidiOSWebAPI
    7.3From $5 a month
  3. 3Hasura logo

    Hasura

    Free planWebAPILinuxSelf-hosted
    6.9Free plan
  4. 4GraphQL Hive logo

    GraphQL Hive

    Free planWebAPISelf-hosted
    6.7From $20 a month
  5. 5

    PostGraphile

    Free planWebAPISelf-hosted
    6.7From $25 a month
  6. 6WunderGraph Cosmo logo

    WunderGraph Cosmo

    Free planWebAPISelf-hosted
    6.7From $499 a month