PostgreSQL / PostGraphile
GraphQL Mesh v0 documentation (superseded by v1): Discover the power of GraphQL Mesh and PostGraphile with our handler library! Use your PostgreSQL database schema to create a GraphQL schema, and add external plugins for federation, many-to-many, and PostGIS support.

This handler allows you to use the GraphQL schema created by PostGraphile, based on a PostgreSQL database schema.
To get started, install the handler library:
Now, you can use it directly in your Mesh config file:
External Plugins (e.g. FederationPlugin, PgManyToManyPlugin, PostGISPlugin)
You can add PostGraphile plugins for example FederationPlugin. You can install it like below:
and add those in your configuration file;
Federation and Automatic Type Merging support
The Federation plugin converts your Postgraphile schema into a federated schema that can also be
recognized by Stitching, which brings Automatic Type Merging. So you can install
@graphile/federation package like above and add it under appendPlugins.
Many-to-Many support
Suppose you want to have automatic many-to-many mapping across your entities. You can install
@graphile-contrib/pg-many-to-many and add it under appendPlugins.
PostGIS Support
If you use PostGIS in your PostgreSQL database, you need to install @graphile/postgis package
and add it under appendPlugins.
Config API Reference
connectionString(type:String) - A connection string to your Postgres databaseschemaName(type:Array of String, required) - An array of strings which specifies the PostgreSQL schemas that PostGraphile will use to create a GraphQL schema. The default schema is the public schema.pool(type:Any) - Connection Pool instance or settings or you can provide the path of a code file that exports any of thoseappendPlugins(type:Array of String) - Extra Postgraphile Plugins to appendskipPlugins(type:Array of String) - Postgraphile Plugins to skip (e.g. “graphile-build#NodePlugin”)options- - Extra Postgraphile options that will be added to the postgraphile constructor. It can either be an object or a string pointing to the object’s path (e.g. ”./my-config#options”). See the postgraphile docs for more information. One of:JSONString
subscriptions(type:Boolean) - Enable GraphQL websocket transport support for subscriptions (default: true)live(type:Boolean) - Enables live-query support via GraphQL subscriptions (sends updated payload any time nested collections/records change) (default: true)contextOptions(type:Any) - A file that exports a function which takes context as a paramter and returns postgraphile context options (e.g. ”./my-function#pgSettings”). See the postgraphile docs for more information.