Relay ·
![npm version](https://camo.githubusercontent.com/118cbc51835a1c01f14dfbb31c00848e15e327d2bb8411e11dddf15cbcc1934a/68747470733a2f2f696d672e736869656c64732e696f2f6e706d2f762f72656163742d72656c61792e7376673f3f7374796c653d666c6174)
Relay is a JavaScript framework for building data-driven React applications.
- Declarative: Never again communicate with your data store using an imperative API. Simply declare your data requirements using GraphQL and let Relay figure out how and when to fetch your data.
- Colocation: Queries live next to the views that rely on them, so you can easily reason about your app. Relay aggregates queries into efficient network requests to fetch only what you need.
- Mutations: Relay lets you mutate data on the client and server using GraphQL mutations, and offers automatic data consistency, optimistic updates, and error handling.
See how to use Relay in your own project.
The relay-examples repository contains an implementation of TodoMVC. To try it out:
git clone https://github.com/relayjs/relay-examples.git
cd relay-examples/todo
yarn
yarn build
yarn start
Then, just point your browser at https://localhost:3000
.
We actively welcome pull requests, learn how to contribute.
We have a community-maintained list of people and projects using Relay in production.
Relay is MIT licensed.
We'd like to thank the contributors that helped make Relay in open source possible.
The open source project relay-hooks
allowed the community to experiment with Relay and React Hooks, and was a source of valuable feedback for us. The idea for the useSubscription
hook originated in an issue on that repo. Thank you @morrys for driving this project and for playing such an important role in our open source community.
Thank you for helping make this possible!