Skip to content

aerogear-attic/data-sync-gql-core

Repository files navigation

AeroGear Sync Core Execution Framework

This is the core module for data sync which produces an executable schema from data models.

This module is used in the following projects:

Functionality

  • Provides access to the models required for Data Sync
  • Provides any module with an executable schema
  • Connect to active datasources

Usage

Currently, Data sync uses this module in the following way:

It requires the module, along with makeExecutableSchema from graphql-tools (required as graphql needs each module to only rely on its own tooling).

const { Core } = require('@aerogear/data-sync-gql-core')
const { makeExecutableSchema } = require('graphql-tools')

It initialises the Core class with the config and the makeExecutableSchema object.

const core = new Core(myConfig, makeExecutableSchema)

Use the core to obtain the schema and dataSources.

const { schema, dataSources } = core.buildSchema(schemaName, pubsub, schemaDirectives)

It can then connect to the data sources.

await core.connectActiveDataSources(dataSources)

Or disconnect from the data sources.

await core.disconnectActiveDataSources(dataSources)

Planned Work

  • Convert this module to TypeScript to improve its usability and reliability as part of the overall sync offering.

About

Data sync core execution framework

Resources

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published