KingDarBoja / Phosphate

Phosphate is a Nim port of GraphQL.js, the JavaScript reference implementation of GraphQL created by Facebook.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Phosphate

Phosphate is a Nim port of GraphQL.js, the JavaScript reference implementation of GraphQL created by Facebook.

This is a work in progress!!

This port is based on the graphql-core python port which is also based on graphql-js.

TODO LIST

  • Language
    • Token Kind Module
    • Directive Locations Module
    • AST module
    • AST module tests
    • Block String module
    • Block String module tests
    • Source module
    • Source module tests
    • Location module
    • Location module tests
    • Lexer module
    • Lexer module tests
    • Parser module
    • Parser module tests
    • Predicates module
    • Predicates module tests
    • Print Location module
    • Print Location module tests
    • Printer module
    • Printer module tests
    • Visitor module
    • Visitor module tests
  • Errors
    • GraphQLError module
    • GraphQLError module tests
    • LocatedError module
    • LocatedError module tests
    • GraphQLSyntaxError module

The location module got merged into source module due to cyclic imports not being supported. Also, the location tests are available at the Python port, the JS implementation lack of it, same goes with ast tests.

Development

Setup Nim

Install Nim by using any available installer. Currently using choosenim as it is easier to update and manage several versions on Windows 10.

Run tests

Run nimble test and that's it!

About

Phosphate is a Nim port of GraphQL.js, the JavaScript reference implementation of GraphQL created by Facebook.

License:MIT License


Languages

Language:Nim 100.0%