gqlparser

by vektah

vektah / gqlparser

A port of the parser from graphql-js into golang

231 Stars 33 Forks Last release: about 1 month ago (v2.1.0) MIT License 270 Commits 11 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

gqlparser CircleCI Go Report Card Coverage Status

This is a parser for graphql, written to mirror the graphql-js reference implementation as closely while remaining idiomatic and easy to use.

spec target: June 2018 (Schema definition language, block strings as descriptions, error paths & extension)

This parser is used by gqlgen, and it should be reasonablly stable.

Guiding principles:

  • maintainability: It should be easy to stay up to date with the spec
  • well tested: It shouldnt need a graphql server to validate itself. Changes to this repo should be self contained.
  • server agnostic: It should be usable by any of the graphql server implementations, and any graphql client tooling.
  • idiomatic & stable api: It should follow go best practices, especially around forwards compatibility.
  • fast: Where it doesnt impact on the above it should be fast. Avoid unnecessary allocs in hot paths.
  • close to reference: Where it doesnt impact on the above, it should stay close to the graphql/graphql-js reference implementation.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.