Skip to content

danscan/datomic-graphql

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

datomic-graphql

GraphQL interface to datomic.

Status

This works. It's pretty nice! It's unfinished though, and while I plan to make use of it, I am not maintaining it now. If you're interested at all, please open an issue, and I'll respond!

Purpose

Datomic is a very interesting database with a simple design. I discovered it right when GraphQL was released, and wanted to test the potential for aligning GraphQL & Datomic.

The goal of this project is to enable a GraphQL interface atop any Datomic database with minimal configuration. Furthermore, I'd really like to use GraphQL to mutate the schema itself, such that it could be considered GraphQL as a backend.

Better notes coming soon. Please don't hesitate to contact me or open an issue if this interests you!

Running the Example

GraphiQL interface to Mbrainz Datomic sample database. GraphiQL

Datomic / Mbrainz Setup

First download the datomic-pro trial and follow this tutorial to create the musicbrainz database.

Then, from within datomic-pro-0.9.x (in different Terminal tabs / tmux / bg):

bin/transactor config/samples/dev-transactor-template.properties

bin/rest -p 8080 dev datomic:dev://localhost:4334/

Clone this repository, npm install, and cd to the example directory.

git clone https://github.com/danscan/datomic-graphql.git
cd datomic-graphql
npm install
cd example
npm install
npm start

datomic-graphql will prompt you to resolve so ambiguities regarding reference attribute targets, enum values, etc. Once ambiguities are resolved, a GraphQL server will start up.

About

[Unfinished; Not Maintained] GraphQL interface to Datomic.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published