23 releases (stable)

new 2.9.9 Jul 20, 2021
2.9.8 Jul 12, 2021
2.9.5 Jun 29, 2021
2.6.5 Mar 24, 2021
2.0.5 Oct 19, 2020

#346 in Asynchronous

Download history 4422/week @ 2021-04-04 3906/week @ 2021-04-11 4728/week @ 2021-04-18 4432/week @ 2021-04-25 5108/week @ 2021-05-02 4504/week @ 2021-05-09 5133/week @ 2021-05-16 4830/week @ 2021-05-23 4707/week @ 2021-05-30 5366/week @ 2021-06-06 5339/week @ 2021-06-13 5632/week @ 2021-06-20 5889/week @ 2021-06-27 4716/week @ 2021-07-04 5051/week @ 2021-07-11 5024/week @ 2021-07-18

21,386 downloads per month
Used in 32 crates (6 directly)

MIT/Apache

67KB
2K 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 (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:

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

License

Licensed under either of

References

Contribute

Welcome to contribute !

Dependencies

~1–1.8MB
~41K SLoC