Documentation

Getting started
GraphQL basics. Start here if you're new to GraphQL :-)
Schema
Your GraphQL API has a schema which defines each field that can be queried or mutated and what types those fields are.
Data fetching
How graphql-java fetches data for each of the fields in a query
Data mapping
How graphql-java maps object data to graphql types
Scalars
How scalar types work in graphql and how to write your own scalars
Batching
How to avoid the dreaded N+1 calls for data and make your graphql system more efficient
Instrumentation
Instrumentation allows you to inject code that can observe the execution of a query and also change the runtime behaviours
Subscriptions
Graphql subscriptions allow you subscribe to a reactive source and as new data arrives a graphql query is applied over that data and the results are passed on.
Defer
Often when executing a query you have two classes of data. The data you need immediately and the data that could arrive little bit later.
Exceptions
Outlines the exceptions used in graphql-java
Field selection
How you can efficiently look ahead at the selected fields lower in the query
Relay
graphql-java has support for Relay
Logging
How logging is done in graphql-java
Concerns
Outlines certain application level concerns and how to address them
Execution
How to execute a query using the graphql-java engine
SDL Directives
How SDL Directives can be used to adjust the behavior of your graphql API
Contributions
Every contribution to make this project better is welcome. Thank you!