platform/packages/graphql/README.md

39 lines
2 KiB
Markdown
Raw Permalink Normal View History

2019-04-18 15:50:49 +00:00
![Logo](https://github.com/angel-dart/graphql/raw/master/img/angel_logo.png)
<div style="text-align: center">
<hr>
<a href="https://pub.dartlang.org/packages/angel_graphql" rel="nofollow"><img src="https://img.shields.io/pub/v/angel_graphql.svg" alt="Pub" data-canonical-src="https://img.shields.io/pub/v/angel_graphql.svg" style="max-width:100%;"></a>
<a href="https://travis-ci.org/angel-dart/graphql" rel="nofollow"><img src="https://travis-ci.org/angel-dart/graphql.svg" alt="Pub" data-canonical-src="https://img.shields.io/pub/v/angel_graphql.svg" style="max-width:100%;"></a>
</div>
2018-08-03 22:11:42 +00:00
2018-08-02 12:48:53 +00:00
A complete implementation of the official
2019-04-18 15:50:49 +00:00
[GraphQL specification](https://graphql.github.io/graphql-spec/June2018/),
2018-08-02 12:48:53 +00:00
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](https://github.com/angel-dart) framework, allows
server-side Dart users to build backends with GraphQL and
2019-04-18 15:50:49 +00:00
virtually any database imaginable.
2019-04-24 19:24:39 +00:00
## Tutorial Demo (click to watch)
[![Youtube thumbnail](video.png)](https://youtu.be/5x6S4kDODa8)
2019-04-18 15:50:49 +00:00
## 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](https://angel-dart.dev) framework. Also serves as the `package:graphql_server` reference implementation.
2019-04-19 03:20:18 +00:00
* `data_loader` - A Dart port of [`graphql/data_loader`](https://github.com/graphql/dataloader).
2019-04-18 15:50:49 +00:00
* `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.