graphql-engine/dc-agents/reference
2022-06-29 07:43:52 +00:00
..
scripts Generate TypeScript types for the Data Connector reference agent from the OpenAPI schema 2022-06-29 07:43:52 +00:00
src Generate TypeScript types for the Data Connector reference agent from the OpenAPI schema 2022-06-29 07:43:52 +00:00
.gitignore Replace Haskell DC Reference Agent with TypeScript DC Reference Agent in HSpec tests 2022-06-23 08:09:46 +00:00
.nvmrc Replace Haskell DC Reference Agent with TypeScript DC Reference Agent in HSpec tests 2022-06-23 08:09:46 +00:00
Dockerfile Replace Haskell DC Reference Agent with TypeScript DC Reference Agent in HSpec tests 2022-06-23 08:09:46 +00:00
package-lock.json Generate TypeScript types for the Data Connector reference agent from the OpenAPI schema 2022-06-29 07:43:52 +00:00
package.json Generate TypeScript types for the Data Connector reference agent from the OpenAPI schema 2022-06-29 07:43:52 +00:00
README.md Replace Haskell DC Reference Agent with TypeScript DC Reference Agent in HSpec tests 2022-06-23 08:09:46 +00:00
tsconfig.json Replace Haskell DC Reference Agent with TypeScript DC Reference Agent in HSpec tests 2022-06-23 08:09:46 +00:00

Data Connector Agent Reference Implementation

This directory contains a barebones implementation of the Data Connector agent specification which fetches its data from static JSON files. It can be used as a reference implementation for testing, and as a reference for developers working on backend services.

Requirements

  • NodeJS 16

Build & Run

> npm install
> npm start

Docker Build & Run

> docker build . -t dc-reference-agent:latest
> docker run -it --rm -p 8100:8100 dc-reference-agent:latest

Dataset

The dataset exposed by the reference agent is sourced from https://github.com/lerocha/chinook-database/

More specifically, the ChinookData.xml.gz file is a GZipped version of https://raw.githubusercontent.com/lerocha/chinook-database/ce27c48d9f375f81b7b68bacdfddf3c4458acc49/ChinookDatabase/DataSources/_Xml/ChinookData.xml

The schema-tables.json is manually derived from the schema of the data as can be seen from the CREATE TABLE etc DML statements in the various per-database-vendor SQL scripts that can be found in /ChinookDatabase/DataSources in that repo.