graphile / federation

Apollo federation support for PostGraphile [UNMAINTAINED]

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

UNMAINTAINED

This plugin is currently unmaintained whilst we focus on development of PostGraphile version 5. There are community forks that you may wish to check out:

To add your fork to the list (or describe what sets it apart) please send a PR to this file.

@graphile/federation

Apollo federation support for PostGraphile (or any Graphile Engine schema).

Installation

yarn add postgraphile @graphile/federation

CLI usage

postgraphile --append-plugins @graphile/federation

Library usage

const express = require("express");
const { postgraphile } = require("postgraphile");
const { default: FederationPlugin } = require("@graphile/federation");

const app = express();
app.use(
  postgraphile(process.env.DATABASE_URL, "public", {
    appendPlugins: [FederationPlugin],
  })
);
app.listen(process.env.PORT || 3000);

How?

This plugin exposes the Global Object Identification Specification (i.e. Node interface) in a way that's compatible with Apollo Federation.

Requires PostGraphile v4.4.2-rc.0+ and a maintained LTS version of Node.

Do you need this?

Only use this if you're planning to have your API consumed by Apollo Federation; exposing these redundant interfaces to regular users may be confusing.

Status

Proof of concept. No tests, use at your own risk! Pull requests very welcome.

About

Apollo federation support for PostGraphile [UNMAINTAINED]

License:MIT License


Languages

Language:TypeScript 90.0%Language:JavaScript 7.6%Language:Shell 2.3%