TL;DR

Meta(旧 Facebook)が開発している、React アプリケーション向けの GraphQL クライアント。もとは Facebook アプリの React Native の部分のために作られた。

仕組み

各コンポーネントは、必要なデータを Fragment で宣言し、useFragment で読み出す。Relay のコンパイラはアプリケーション全体のデータ要件を集約し、効率のよいリクエストにまとめる。コンポーネントが自分のデータ依存を宣言するので、コンポーネントどうしが疎結合になり、再利用しやすくなる。

この考え方は Fragment Colocation と呼ばれる。また、コンポーネントは自分の Fragment で宣言したデータしか受け取れない。これを Fragment Masking と呼び、Relay が提唱した。

関連

出典