Graphql Parser 2

Pub Version (including pre-releases) Null Safety Gitter License melos

Parses GraphQL queries and schemas.

This library is merely a parser/visitor. Any sort of actual GraphQL API functionality must be implemented by you, or by a third-party package.

Angel3 Framework users should consider package:angel3_graphql as a dead-simple way to add GraphQL functionality to their servers.


Add graphql_parser2 as a dependency in your pubspec.yaml file:

  graphql_parser2: ^6.0.0


The AST featured in this library was originally directly based off this ANTLR4 grammar created by Joseph T. McBride:

It has since been updated to reflect upon the grammar in the official GraphQL specification (June 2018).

import 'package:graphql_parser2/graphql_parser2.dart';

doSomething(String text) {
  var tokens = scan(text);
  var parser = Parser(tokens);
  if (parser.errors.isNotEmpty) {
    // Handle errors...
  // Parse the GraphQL document using recursive descent
  var doc = parser.parseDocument();
  // Do something with the parsed GraphQL document...