All Projects → absinthe-graphql → Absinthe_relay

absinthe-graphql / Absinthe_relay

Licence: mit
Absinthe support for the Relay framework

Programming Languages

elixir
2628 projects

Projects that are alternatives of or similar to Absinthe relay

Tkframework
react + relay + redux + saga + graphql + webpack
Stars: ✭ 83 (-41.96%)
Mutual labels:  graphql, relay
Vue Relay
🖖 🔛 🗂 A framework for building GraphQL-driven Vue.js applications.
Stars: ✭ 105 (-26.57%)
Mutual labels:  graphql, relay
Graphql Relay Js
A library to help construct a graphql-js server supporting react-relay.
Stars: ✭ 1,331 (+830.77%)
Mutual labels:  graphql, relay
Magiql
🌐 💫 Simple and powerful GraphQL Client, love child of react-query ❤️ relay
Stars: ✭ 45 (-68.53%)
Mutual labels:  graphql, relay
Graphql Sequelize Crud
Automatically generate queries and mutations from Sequelize models
Stars: ✭ 129 (-9.79%)
Mutual labels:  graphql, relay
Graphql Query Test Mock
Easily mock GraphQL queries in your Relay Modern / Apollo / any-other-GraphQL-client tests.
Stars: ✭ 49 (-65.73%)
Mutual labels:  graphql, relay
Relay Northwind App
A complex React, Relay, GraphQL demo app. Online demo:
Stars: ✭ 104 (-27.27%)
Mutual labels:  graphql, relay
Lighthouse Utils
An add-on to Lighthouse to auto-generate CRUD actions from types https://github.com/nuwave/lighthouse
Stars: ✭ 26 (-81.82%)
Mutual labels:  graphql, relay
Relay Example
[READONLY] 💝 Examples of common Relay patterns used in real-world applications. This repository is automatically exported from https://github.com/adeira/universe via Shipit
Stars: ✭ 126 (-11.89%)
Mutual labels:  graphql, relay
Hackatalk
TalkTalk renewal. Open source chat app built-in expo managed work flow
Stars: ✭ 123 (-13.99%)
Mutual labels:  graphql, relay
Relay Fullstack
☝️🏃 Modern Relay Starter Kit - Integrated with Relay, GraphQL, Express, ES6/ES7, JSX, Webpack, Babel, Material Design Lite, and PostCSS
Stars: ✭ 986 (+589.51%)
Mutual labels:  graphql, relay
Frontend
🌏 The front-end application code for https://buildkite.com
Stars: ✭ 132 (-7.69%)
Mutual labels:  graphql, relay
Learnrelay
Learn Relay - A comprehensive introduction to Relay (created by Graphcool)
Stars: ✭ 887 (+520.28%)
Mutual labels:  graphql, relay
Rpg Boilerplate
Relay (React), Postgres, and Graphile (GraphQL): A Modern Frontend and API Boilerplate
Stars: ✭ 62 (-56.64%)
Mutual labels:  graphql, relay
Graphql Config
One configuration for all your GraphQL tools (supported by most tools, editors & IDEs)
Stars: ✭ 883 (+517.48%)
Mutual labels:  graphql, relay
React Transmit
Relay-inspired library based on Promises instead of GraphQL.
Stars: ✭ 1,335 (+833.57%)
Mutual labels:  graphql, relay
Adrenaline
Simple Relay alternative
Stars: ✭ 720 (+403.5%)
Mutual labels:  graphql, relay
Graphene
GraphQL framework for Python
Stars: ✭ 6,964 (+4769.93%)
Mutual labels:  graphql, relay
Graphql Live Query
Realtime GraphQL Live Queries with JavaScript
Stars: ✭ 112 (-21.68%)
Mutual labels:  graphql, relay
Graphbrainz
A fully-featured GraphQL interface for the MusicBrainz API.
Stars: ✭ 130 (-9.09%)
Mutual labels:  graphql, relay

Absinthe.Relay

Build Status Hex pm License

Support for the Relay framework from Elixir, using the Absinthe package.

Installation

Install from Hex.pm:

def deps do
  [{:absinthe_relay, "~> 1.5.0"}]
end

Note: Absinthe requires Elixir 1.4 or higher.

Upgrading

See CHANGELOG for upgrade steps between versions.

You may want to look for the specific upgrade guide in the Absinthe documentation.

Documentation

See "Usage," below, for basic usage information and links to specific resources.

Roadmap

See the Roadmap on absinthe-graphql.org.

Related Projects

See the Project List on absinthe-graphql.org.

Usage

Schemas should use Absinthe.Relay.Schema, optionally providing what flavor of Relay they'd like to support (:classic or :modern):

defmodule Schema do
  use Absinthe.Schema
  use Absinthe.Relay.Schema, :modern

  # ...

end

For a type module, use Absinthe.Relay.Schema.Notation

defmodule Schema do
  use Absinthe.Schema.Notation
  use Absinthe.Relay.Schema.Notation, :modern

  # ...

end

Note that if you do not provide a flavor option, it will choose the default of :classic, but warn you that this behavior will change to :modern in absinthe_relay v1.5.

See the documentation for Absinthe.Relay.Node, Absinthe.Relay.Connection, and Absinthe.Relay.Mutation for specific usage information.

Node Interface

Relay requires an interface, "Node", be defined in your schema to provide a simple way to fetch objects using a global ID scheme.

See the Absinthe.Relay.Node module documentation for specific instructions on how do design a schema that makes use of nodes.

Connection

Relay uses Connection (and other related) types to provide a standardized way of slicing and paginating a one-to-many relationship.

Support in this package is designed to match the Relay Cursor Connection Specification.

See the Absinthe.Relay.Connection module documentation for specific instructions on how do design a schema that makes use of nodes.

Mutation

Relay supports mutation via a contract involving single input object arguments (optionally for Relay Modern) with client mutation IDs (only for Relay Classic).

See the Absinthe.Relay.Mutation module documentation for specific instructions on how to design a schema that makes use of mutations.

Supporting the Babel Relay Plugin

To generate a schema.json file for use with the Babel Relay Plugin, run the absinthe.schema.json Mix task, built-in to Absinthe.

In your project, check out the documentation with:

mix help absinthe.schema.json

More Documentation

See additional documentation, including guides, in the Absinthe hexdocs.

Contributing

Please remember that all interactions in our official spaces follow our Code of Conduct.

License

See LICENSE.md

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].