Dart GraphQL server implementation and utilities

  GraphQL
Logo

Short Intro: Dart GraphQL server implementation and utilities. Data loader, code generator, examples and reference implementation.

A complete implementation of the official GraphQL specification, in the Dart programming language.

The goal of this project is to provide to server-side users of Dart an alternative to REST API’s.

Included is also package:angel_graphql, which, when combined with the Angel framework, allows server-side Dart users to build backends with GraphQL and virtually any database imaginable.

Tutorial Demo (click to watch)

Youtube thumbnail

Projects

This mono repo is split into several sub-projects, each with its own detailed documentation and examples:

  • angel_graphql – Support for handling GraphQL via HTTP and WebSockets in the Angel framework. Also serves as the package:graphql_server reference implementation.
  • data_loader – A Dart port of graphql/data_loader.
  • example_star_wars: An example GraphQL API built using package:angel_graphql.
  • graphql_generator: Generates package:graphql_schema object types from concrete Dart classes.
  • graphql_parser: A recursive descent parser for the GraphQL language.
  • graphql_schema: An implementation of GraphQL’s type system. This, combined with package:graphql_parser, powers package:graphql_server.
  • graphql_server: Base functionality for implementing GraphQL servers in Dart. Has no dependency on any framework.

Download GraphQL server implementation and utilities source code on GitHub