Tanka GraphQL library (TGQL)

  • Execute queries, mutations and subscriptions
  • Validation (new implementation in v0.3.0)
  • SignalR hub for streaming queries, mutations and subscriptions
  • ApolloLink for the provided SignalR hub
  • Apollo GraphQL WebSockets (apollo-link-ws) compatible web socket server (since v0.8.0)
  • Code generation
  • New and improved parser for executable and type system documents (since v2.0.0)

Documentation and packages



Both beta and release packages are available from NuGet and NPM

Nuget Nuget (with prereleases)

npm npm


Complete sample with codegeration See Sample


dotnet package add tanka.graphql
dotnet package add tanka.graphql.server

npm install @tanka/tanka-graphql-server-link


Run the dev harness

This repo includes a sample application which is used for testing and development of the SignalR client and the server.

Open the tanka-graphql.sln and start the graphql.dev.chat.web project. This will start a simple chat server using the tanka.graphql.server.

Start the client by following instructions below:

# Install dependencies
src\graphql.server.link> yarn install

# Link the server-link
src\graphql.server.link> yarn link

# Watch for source changes and recompile the link
src\graphql.server.link> yarn watch

# Install dependencies
dev\graphql.dev.chat.ui> yarn install

# Use the linked server-link
dev\graphql.dev.chat.ui> yarn link @tanka/tanka-graphql-server-link

# Watch for source changes and recompile the sample
dev\graphql.dev.chat.ui> yarn start

Run benchmarks

src\graphql.benchmarks> dotnet run --configuration release --framework netcoreapp22