267 stable releases

new 2.10.0 Sep 17, 2021
2.9.12 Aug 24, 2021
2.9.9 Jul 20, 2021
2.7.2 Mar 31, 2021
0.10.8 Mar 10, 2020

#5 in Asynchronous

Download history 4551/week @ 2021-05-28 5844/week @ 2021-06-04 5554/week @ 2021-06-11 5650/week @ 2021-06-18 6027/week @ 2021-06-25 4523/week @ 2021-07-02 4787/week @ 2021-07-09 6566/week @ 2021-07-16 4514/week @ 2021-07-23 6260/week @ 2021-07-30 5848/week @ 2021-08-06 6035/week @ 2021-08-13 7990/week @ 2021-08-20 5619/week @ 2021-08-27 6279/week @ 2021-09-03 6708/week @ 2021-09-10

25,578 downloads per month
Used in 32 crates (30 directly)

MIT/Apache

1MB
25K SLoC

A GraphQL server library implemented in Rust

Async-graphql is a high-performance server-side library that supports all GraphQL specifications.

Safety

This crate uses #![forbid(unsafe_code)] to ensure everything is implemented in 100% Safe Rust.

Features

  • Fully supports async/await
  • Type safety
  • Rustfmt friendly (Procedural Macro)
  • Custom scalars
  • Minimal overhead
  • Easy integration (poem, actix_web, tide, warp, rocket ...)
  • Upload files (Multipart request)
  • Subscriptions (WebSocket transport)
  • Custom extensions
  • Apollo Tracing extension
  • Limit query complexity/depth
  • Error Extensions
  • Apollo Federation
  • Batch Queries
  • Apollo Persisted Queries

Crate features

This crate offers the following features, all of which are not activated by default:

Apollo Studio

Apollo Studio is a cloud platform that helps you build, monitor, validate, and secure your organization's data graph. An existing extension is available for this crate here

Examples

All examples are in the sub-repository, located in the examples directory.

Run an example:

git submodule update # update the examples repo
cd examples && cargo run --bin [name]

Integrations

Who's using Async-graphql in production?

Blog Posts

License

Licensed under either of

References

Contribute

Welcome to contribute !

Dependencies

~9–13MB
~326K SLoC