Skip to content
This repository has been archived by the owner on Apr 17, 2023. It is now read-only.

aerogear/datasync-voyager

Repository files navigation

AeroGear Data Sync

CircleCI Coverage Status

Home of the Aerogear Data Sync. The goal of this project is to make it easier to build secure, production ready, realtime APIs and applications with GraphQL.

DataSync is based on Graphback (https://graphback.dev) platform that uses additional packages providing an extension to support enterprise grade solutions for the synchronization and authentication etc.

The project does this by taking the popular Apollo Server framework and adding additional components to solve some common problems.

  • Realtime Synchronisation
  • Conflict Detection and Resolution
  • Authentication and Authorization

The Voyager framework has a small ecosystem of components for building GraphQL based applications.

NOTE: For latest example of the datasync platform please go to: https://github.com/aerogear/datasync-starter

Client

  • voyager-client - JavaScript Client Library for building applications with Offline Capabilities

Server

  • voyager-server - The core Voyager Server module.
  • voyager-keycloak - Adds Authentication and Authorization to Voyager Server using keycloak.
  • voyager-conflicts - Provides server side conflict detection mechanisms for building offline enabled applications.
  • voyager-subscriptions - Simplifies the set up of GraphQL Subscriptions, used for real time updates.
  • graphl-mqtt-subscriptions - Enables the use of an MQTT Broker (Such as Mosquitto/RabbitMQ/Red Hat AMQ) as the Pub/Sub mechanism for GraphQL Subscriptions.

Local Development Setup

The Local Development Guide will help contributors to get started developing Voyager Server.

Contributing

The Contributing Guide will give you all of the information you need to ask for help, open Issues and open Pull Requests.

Examples

The Examples Guide walks through some example applications which highlight some of Voyager Server's features.

Docs

Documentation in docs/integreatly can be previewed using Antora using:

antora local-antora-playbook.yml