/awesome-tinkerpop

A curated list of useful libraries for Apache TinkerPop3 and Tinkerpop2

Creative Commons Zero v1.0 UniversalCC0-1.0

Awesome TinkerPop Awesome

alt tag

A curated list of only awesome TinkerPop libraries on Github.

Apache TinkerPop™ is a graph computing framework for both graph databases (OLTP) and graph analytic systems (OLAP).

Table of Contents

TinkerPop3 Libraries

Implementations

Wrappers/Clients

C# .NET
  • Teva Gremlin (.NET - C#) - A Gremlin Server driver for .NET.
Clojure
  • ogre - Clojure library for querying TinkerPop graphs.
  • scalajs-gremlin-client (scala) - A Gremlin-Server client with ad-hoc extensible, reactive, typeclass based API.
Go
  • go-gremlin - Go graph database client for TinkerPop3 Gremlin Server.
  • Gremgo - A fast, efficient, and easy-to-use Go client for the TinkerPop graph database stack.
  • grammes - A Go package built to communicate with Apache TinkerPop™ Graph computing framework using Gremlin.
Haskell
Java
  • gremlin-driver (java) - A Gremlin Server driver for Java.
  • neo4j-tinkerpop-api - Apache Licensed Neo4j API for TinkerPop3.
  • neo4j-gremlin-bolt - Allows use of the Apache Tinkerpop Java API with the neo4j server using the BOLT protocol.
  • Ferma - An ORM / OGM for the TinkerPop graph stack.
Javascript
  • ts-tinkerpop - Utilities for using TinkerPop3 via the node-java API in Typescript.
  • gremlin-javascript (js) - A Gremlin Server driver for JavaScript.
PHP
  • gremlin-php - gremlin-server php driver compatible with TinkerPop3. It will allow you to connect to gremlin-server and it's backends (Neo4J, Titan, etc.).
Python
  • Mogwai - TinkerPop3 Graph Database Library for Python.
  • python-gremlin-rest - A REST-based client for Gremlin Server.
  • gremlinclient - An asynchronous Python 2/3 client for Gremlin Server that allows for flexible coroutine syntax - Trollius, Tornado, Asyncio.
  • aiogremlin (python) - A Python 3 library based on asyncio and aiohttp that uses websockets to communicate with the Gremlin Server.
  • gremlinrestclient (python) - Python 2/3 library that uses HTTP to communicate with the Gremlin Server over REST.
  • goblin - OGM for TinkerPop3 Gremlin Server.
  • goblin 3.5 - A Python 3.5 rewrite of the TinkerPop 3 OGM Goblin.
Reactive
Scala

Query Languages

  • gremlin-py - Write pure Python Gremlin that can be sent to Gremlin Server.
  • gremlin-scala - A Scala language wrapper for TinkerPop3.
  • gremlin-template-string - A Javascript Gremlin language builder.
  • ipython-gremlin - Gremlin in IPython and Jupyter.
  • ogre - A Clojure language wrapper for TinkerPop3.
  • Peapod - A new object-graph-wrapper for the Tinkerpop3 graph stack.
  • sparql-gremlin - A SPARQL to Gremlin traversal compiler.
  • sql-gremlin - A SQL to Gremlin traversal compiler.
  • greskell - Haskell binding for Gremlin graph query language
  • Cypher for Gremlin - Cypher for Gremlin adds Cypher support to any Gremlin graph database.

TinkerPop 2 Libraries

  • Ferma - An ORM / OGM for the TinkerPop graph stack.
  • Frames - An Object to Graph Framework.
  • Archimedes - Clojure library for Blueprints (part of the TinkerPop graph stack).
  • AccumuloGraph - An implementation of TinkerPop Blueprints using Accumulo.
  • Frontenac - A .NET port of the TinkerPop Stack.
  • Mogwai - TinkerPop 2 Graph Database Library for Python.
  • spring-data-gremlin - Spring data gremlin makes it easier to implement Graph based repositories. This module extends Spring Data to allow support for potentially any Graph database that implements the TinkerPop Blueprints 2.x API.
  • blueprints-scala - TinkerPop Blueprints Scala.

Communities

People to Follow

Tutorials and Resources

How to Contribute

alt tag

Please follow the guidelines here. Please, make sure your contribution and PR are awesome!

License

CC0

To the extent possible under law, @mohataher has waived all copyright and related or neighboring rights to this work.