tailcallhq
tailcall
Rust

High Performance GraphQL Runtime

Last updated Jul 7, 2026
1.4k
Stars
258
Forks
17
Issues
+2
Stars/day
Attention Score
95
Language breakdown
No language data available.
โ–ธ Files click to expand
README

Tailcall Logo

Tailcall is an open-source solution for building [high-performance] GraphQL backends.

Please support us by giving the repository a star image

[high-performance]: https://github.com/tailcallhq/graphql-benchmarks

Tweet Discord

Open Bounties Rewarded Bounties GitHub Workflow Status (with event) GitHub release (by tag) Discord Codecov

Installation

NPM

npm i -g @tailcallhq/tailcall

Yarn

yarn global add @tailcallhq/tailcall

Home Brew

brew tap tailcallhq/tailcall
brew install tailcall

Curl

curl -sSL https://raw.githubusercontent.com/tailcallhq/tailcall/master/install.sh | bash

Docker

docker pull ghcr.io/tailcallhq/tailcall/tc-server
docker run -p 8080:8080 -p 8081:8081 ghcr.io/tailcallhq/tailcall/tc-server

Get Started

The below file is a standard .graphQL file, with a few additions such as @server and @http directives. So, basically, we specify the GraphQL schema and how to resolve that GraphQL schema in the same file, without having to write any code!

schema @server(port: 8000, hostname: "0.0.0.0") @upstream(httpCache: 42) {
  query: Query
}

type Query { posts: [Post] @http(url: "http://jsonplaceholder.typicode.com/posts") user(id: Int!): User @http(url: "http://jsonplaceholder.typicode.com/users/{{.args.id}}") }

type User { id: Int! name: String! username: String! email: String! phone: String website: String }

type Post { id: Int! userId: Int! title: String! body: String! user: User @http(url: "http://jsonplaceholder.typicode.com/users/{{.value.userId}}") }

Now, run the following command to start the server with the full path to the jsonplaceholder.graphql file that you created above.

tailcall start ./jsonplaceholder.graphql

Head out to [docs] to learn about other powerful tailcall features.

[docs]: https://tailcall.run/docs

Benchmarks

Throughput comparison of various GraphQL solutions for a N + 1 query:

query {
  posts {
    title
    body
    user {
      name
    }
  }
}

Throughput Histogram

Check out detailed benchmarks on our benchmarking repository.

Contributing

Your contributions are invaluable! Kindly go through our [contribution guidelines] if you are a first time contributor.

[contribution guidelines]: https://tailcall.run/docs/contribution-guidelines

Support Us

โญ๏ธ Give us a star.

๐Ÿ‘€ Watch us for updates.

License

This initiative is protected under the Apache 2.0 License.

๐Ÿ”— More in this category

ยฉ 2026 GitRepoTrend ยท tailcallhq/tailcall ยท Updated daily from GitHub