graphql-scala icon indicating copy to clipboard operation
graphql-scala copied to clipboard

A incomplete Scala port of Facebook's reference implementation of GraphQL.

trafficstars

GraphQL-Scala

This is a Scala port from the JavaScript code of the reference implementation of GraphQL.

GraphQL is a query language created by Facebook for describing data requirements on complex application data models.

Build Status General GraphQL Slack Discussion

Code

GraphQL-Scala follows the code structure of graphql-js and is also trying to provide base libraries in Scala that would provide the bases for full GraphQL implementations and tools. It is not a fully standalone GraphQL server that a client developer could use to start manipulating and querying data. Most importantly, it still does not provide a mapping to a functioning, production-ready backend.

The parser is implemented "by hand" without any parser generator as a dependency.

For a more comprehensive implementation of GraphQL tools in Scala check sangria-graphql/sangria.

Getting Started

An overview of GraphQL in general is available in the README for the Specification for GraphQL. That overview describes a simple set of GraphQL examples.

Using GraphQL-Scala

Download the source code and build using SBT.

TODO(philix): publish on Maven

TODO(philix): implement schema building capabilities and document it here

Contributing

We actively welcome pull requests, learn how to contribute.

Changelog

Changes are tracked as Github releases.

License

GraphQL-Scala is BSD-licensed.