async-graphql/docs/en/src/introduction.md

21 lines
984 B
Markdown
Raw Normal View History

2020-04-15 03:15:30 +00:00
# Introduction
2020-04-22 03:16:41 +00:00
2020-05-09 20:56:15 +00:00
`Async-graphql` is a GraphQL server-side library implemented in Rust. It is fully compatible with the GraphQL specification and most of its extensions, and offers type safety and high performance.
2020-04-22 03:16:41 +00:00
2020-05-09 20:56:15 +00:00
You can define a Schema in Rust and procedural macros will automatically generate code for a GraphQL query. This library does not extend Rust's syntax, which means that Rustfmt can be used normally. I value this highly and it is one of the reasons why I developed `Async-graphql`.
2020-04-22 03:16:41 +00:00
## Why do this?
2020-05-09 20:56:15 +00:00
I like GraphQL and Rust. I've been using `Juniper`, which solves the problem of implementing a GraphQL server with Rust. But Juniper had several problems, the most important of which is that it didn't support async/await at the time. So I decided to make this library for myself.
2020-04-22 03:16:41 +00:00
## Benchmarks
2020-06-02 00:57:45 +00:00
Ensure that there is no CPU-heavy process in background!
```shell script
cd benchmark
cargo bench
```
2020-06-02 00:57:45 +00:00
2020-09-01 05:47:22 +00:00
Now a HTML report is available at `benchmark/target/criterion/report`.