[[
wikihub
]]
Search
⌘K
Explore
People
For Agents
Sign in
Explore
People
For Agents
Sign in
@harrisonqian / Awesome / wiki/databases/tinkerpop.md
Suggest edit
Cancel
Submit suggestion
Title
Name
Note
--- visibility: public --- # TinkerPop **repo:** [mohataher/awesome-tinkerpop](https://github.com/mohataher/awesome-tinkerpop) **category:** [[databases|Databases]] --- # Awesome TinkerPop [](https://github.com/sindresorhus/awesome)  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](#tinkerpop3) - [Implementations](#tinkerpop3-implementations) - [Wrappers/Clients](#wrappers) - [Query Languages](#qlang) * [TinkerPop2](#tinkerpop2) * [Communites](#communites) * [People to Follow](#people-to-follow) * [Tutorials and Resources](#[tutorials](/@harrisonqian/awesome/wiki/computer-science/tutorials)-and-resources) * [How to Contribute](#contributing) * [License](#license) ### <A NAME="tinkerpop3"></A>TinkerPop3 Libraries #### <A NAME="tinkerpop3-implementations"></A>Implementations * [TinkerPop3 implementation](https://github.com/apache/tinkerpop) - Mirror of Apache TinkerPop. * [sqlg](https://github.com/pietermartin/sqlg) - Sqlg is a implementation of TinkerPop3 on a RDBMS. * [blazegraph](https://github.com/blazegraph/database) - TinkerPop3 [implementation](https://github.com/blazegraph/tinkerpop3) for Blaze Graph; a high performance graph [database](/@harrisonqian/awesome/wiki/databases/database). * [tinkergraph-js](https://github.com/jbmusso/tinkergraph-js) - A pure [JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript) implementation of TinkerPop's TinkerGraph in-memory graph [database](/@harrisonqian/awesome/wiki/databases/database). * [gremlin-javascript](https://github.com/jbmusso/gremlin-javascript) - [JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript) graph [database](/@harrisonqian/awesome/wiki/databases/database) client for TinkerPop3 Gremlin Server. * [Elastic Gremlin](https://github.com/rmagen/elastic-gremlin) - TinkerPop3 implementation on Elasticsearch backend. * [Hadoop (Giraph)](http://tinkerpop.apache.org/docs/current/reference/#giraphgraphcomputer) - OLAP graph processor using Giraph. * [Hadoop (Spark)](http://tinkerpop.apache.org/docs/current/reference/#sparkgraphcomputer) - OLAP graph processor using Spark. * [IBM Graph](https://console.ng.bluemix.net/catalog/services/ibm-graph/) - OLTP graph [database](/@harrisonqian/awesome/wiki/databases/database) as a service. * [Neo4j](http://tinkerpop.apache.org/docs/currentg/#[neo4j](/@harrisonqian/awesome/wiki/databases/neo4j)-gremlin) - OLTP graph [database](/@harrisonqian/awesome/wiki/databases/database). * [Stardog](http://stardog.com/) - RDF graph [database](/@harrisonqian/awesome/wiki/databases/database) with OLTP and OLAP support. * [TinkerGraph](http://tinkerpop.apache.org/docs/current/reference/#tinkergraph-gremlin) - In-memory OLTP and OLAP reference implementation. * [Unipop](https://github.com/rmagen/unipop) - OLTP Elasticsearch and JDBC backed graph. * [DuctileDB](https://github.com/PureSolTechnologies/DuctileDB) - Ductile DB is a graph [database](/@harrisonqian/awesome/wiki/databases/database) based on [Hadoop](/@harrisonqian/awesome/wiki/big-data/hadoop)/[HBase](/@harrisonqian/awesome/wiki/databases/hbase) which provides a vast set of features. * [hgraphdb](https://github.com/rayokota/hgraphdb) - [HBase](/@harrisonqian/awesome/wiki/databases/hbase) as a TinkerPop Graph [Database](/@harrisonqian/awesome/wiki/databases/database). * [JanusGraph](https://github.com/JanusGraph/janusgraph) - JanusGraph: an open-source, distributed graph [database](/@harrisonqian/awesome/wiki/databases/database) http://janusgraph.org * [JanusGraph for DynamoDB (Amazon)](https://github.com/awslabs/dynamodb-janusgraph-storage-backend) - The Amazon DynamoDB storage backend for JanusGraph. * [orientdb-gremlin](https://github.com/orientechnologies/orientdb-gremlin) - TinkerPop3 Graph Structure Implementation for OrientDB. #### <A NAME="wrappers"></A>Wrappers/Clients ##### C# .NET * [Teva Gremlin](https://www.nuget.org/packages/Teva.Common.Data.Gremlin/) (.NET - C#) - A Gremlin Server driver for .NET. ##### Clojure * [ogre](https://github.com/clojurewerkz/ogre) - [Clojure](/@harrisonqian/awesome/wiki/programming-languages/clojure) library for querying TinkerPop graphs. * [scalajs-gremlin-client](https://github.com/viagraphs/scalajs-gremlin-client) (scala) - A Gremlin-Server client with ad-hoc extensible, reactive, typeclass based API. ##### Go * [go-gremlin](https://github.com/go-gremlin/gremlin) - Go graph [database](/@harrisonqian/awesome/wiki/databases/database) client for TinkerPop3 Gremlin Server. * [Gremgo](https://github.com/qasaur/gremgo) - A fast, efficient, and easy-to-use Go client for the TinkerPop graph [database](/@harrisonqian/awesome/wiki/databases/database) stack. * [grammes](https://github.com/northwesternmutual/grammes) - A Go package built to communicate with Apache TinkerPop™ Graph computing framework using Gremlin. ##### Haskell * [greskell-websocket](https://github.com/debug-ito/greskell) - [Haskell](/@harrisonqian/awesome/wiki/programming-languages/haskell) client for TinkerPop3 Gremlin Server. ##### Java * [gremlin-driver](http://tinkerpop.apache.org/docs/current/reference/#connecting-via-java) (java) - A Gremlin Server driver for [Java](/@harrisonqian/awesome/wiki/programming-languages/java). * [neo4j-tinkerpop-api](https://github.com/neo4j-contrib/neo4j-tinkerpop-api) - Apache Licensed [Neo4j](/@harrisonqian/awesome/wiki/databases/neo4j) API for TinkerPop3. * [neo4j-gremlin-bolt](https://github.com/SteelBridgeLabs/neo4j-gremlin-bolt) - Allows use of the Apache Tinkerpop [Java](/@harrisonqian/awesome/wiki/programming-languages/java) API with the [neo4j](/@harrisonqian/awesome/wiki/databases/neo4j) server using the BOLT protocol. * [Ferma](https://github.com/Syncleus/Ferma) - An ORM / OGM for the TinkerPop graph stack. ##### Javascript * [ts-tinkerpop](https://github.com/RedSeal-co/ts-tinkerpop) - Utilities for using TinkerPop3 via the node-[java](/@harrisonqian/awesome/wiki/programming-languages/java) API in Typescript. * [gremlin-javascript](https://github.com/jbmusso/gremlin-javascript) (js) - A Gremlin Server driver for [JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript). ##### PHP * [gremlin-php](https://github.com/PommeVerte/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](https://github.com/platinummonkey/mogwai) - TinkerPop3 Graph [Database](/@harrisonqian/awesome/wiki/databases/database) Library for [Python](/@harrisonqian/awesome/wiki/programming-languages/python). * [python-gremlin-rest](https://github.com/windj007/python-gremlin-rest) - A [REST](/@harrisonqian/awesome/wiki/miscellaneous/rest)-based client for Gremlin Server. * [gremlinclient](https://github.com/davebshow/gremlinclient) - An asynchronous [Python](/@harrisonqian/awesome/wiki/programming-languages/python) 2/3 client for Gremlin Server that allows for flexible coroutine syntax - Trollius, Tornado, [Asyncio](/@harrisonqian/awesome/wiki/programming-languages/asyncio). * [aiogremlin](https://github.com/davebshow/aiogremlin) (python) - A [Python](/@harrisonqian/awesome/wiki/programming-languages/python) 3 library based on [asyncio](/@harrisonqian/awesome/wiki/programming-languages/asyncio) and aiohttp that uses websockets to communicate with the Gremlin Server. * [gremlinrestclient](http://gremlinrestclient.readthedocs.org/en/latest/) (python) - [Python](/@harrisonqian/awesome/wiki/programming-languages/python) 2/3 library that uses HTTP to communicate with the Gremlin Server over [REST](/@harrisonqian/awesome/wiki/miscellaneous/rest). * [goblin](https://github.com/ZEROFAIL/goblin) - OGM for TinkerPop3 Gremlin Server. * [goblin 3.5](https://github.com/davebshow/goblin) - A [Python](/@harrisonqian/awesome/wiki/programming-languages/python) 3.5 rewrite of the TinkerPop 3 OGM Goblin. ##### Reactive * [reactive-gremlin](https://github.com/coreyauger/reactive-gremlin) (scala) - An Akka HTTP Websocket Connector. ##### Scala * [Gremlin Scala](https://github.com/mpollmeier/gremlin-scala) - [Scala](/@harrisonqian/awesome/wiki/programming-languages/scala) wrapper for Apache TinkerPop3 Graph DSL. * [blueprints-scala](https://github.com/anvie/blueprints-scala) - Tinkerpop Blueprints [Scala](/@harrisonqian/awesome/wiki/programming-languages/scala). #### <A NAME="qlang"></A>Query Languages * [gremlin-py](https://github.com/emehrkay/gremlinpy) - Write pure [Python](/@harrisonqian/awesome/wiki/programming-languages/python) Gremlin that can be sent to Gremlin Server. * [gremlin-scala](https://github.com/mpollmeier/gremlin-scala) - A [Scala](/@harrisonqian/awesome/wiki/programming-languages/scala) language wrapper for TinkerPop3. * [gremlin-template-string](https://github.com/jbmusso/gremlin-template-string) - A [Javascript](/@harrisonqian/awesome/wiki/programming-languages/javascript) Gremlin language builder. * [ipython-gremlin](https://github.com/davebshow/ipython-gremlin) - Gremlin in IPython and [Jupyter](/@harrisonqian/awesome/wiki/miscellaneous/jupyter). * [ogre](http://ogre.clojurewerkz.org/) - A [Clojure](/@harrisonqian/awesome/wiki/programming-languages/clojure) language wrapper for TinkerPop3. * [Peapod](https://github.com/bayofmany/peapod) - A new object-graph-wrapper for the Tinkerpop3 graph stack. * [sparql-gremlin](https://github.com/dkuppitz/sparql-gremlin) - A SPARQL to Gremlin traversal compiler. * [sql-gremlin](https://github.com/twilmes/sql-gremlin) - A SQL to Gremlin traversal compiler. * [greskell](https://github.com/debug-ito/greskell) - [Haskell](/@harrisonqian/awesome/wiki/programming-languages/haskell) binding for Gremlin graph query language * [Cypher for Gremlin](https://github.com/opencypher/cypher-for-gremlin) - Cypher for Gremlin adds Cypher support to any Gremlin graph [database](/@harrisonqian/awesome/wiki/databases/database). ### <A NAME="tinkerpop2"></A>TinkerPop 2 Libraries * [Ferma](https://github.com/Syncleus/Ferma) - An ORM / OGM for the TinkerPop graph stack. * [Frames](https://github.com/tinkerpop/frames) - An Object to Graph Framework. * [Archimedes](https://github.com/clojurewerkz/archimedes) - [Clojure](/@harrisonqian/awesome/wiki/programming-languages/clojure) library for Blueprints (part of the TinkerPop graph stack). * [AccumuloGraph](https://github.com/JHUAPL/AccumuloGraph) - An implementation of TinkerPop Blueprints using Accumulo. * [Frontenac](https://github.com/Loupi/Frontenac) - A .NET port of the TinkerPop Stack. * [Mogwai](https://github.com/platinummonkey/mogwai) - TinkerPop 2 Graph [Database](/@harrisonqian/awesome/wiki/databases/database) Library for [Python](/@harrisonqian/awesome/wiki/programming-languages/python). * [spring-data-gremlin](https://github.com/gjrwebber/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](/@harrisonqian/awesome/wiki/databases/database) that implements the TinkerPop Blueprints 2.x API. * [blueprints-scala](https://github.com/anvie/blueprints-scala) - TinkerPop Blueprints [Scala](/@harrisonqian/awesome/wiki/programming-languages/scala). ## <A NAME="communites"></A>Communities * [Gremlin-users](https://groups.google.com/forum/#!forum/gremlin-users) - Mailing list for Gremlin users. * [Stack Overflow](http://stackoverflow.com/questions/tagged/tinkerpop3) - Stack Overflow has a relatively active community. * [TinkerPop-dev](http://mail-archives.apache.org/mod_mbox/incubator-tinkerpop-dev/) - Mailing list for TP3 deverlopers. ## <A NAME="people-to-follow"></A>People to Follow * [Marko Rodriguez](https://markorodriguez.com/) - Founder of TinkerPop and Aurelius. * [Stephen Mallette](https://twitter.com/spmallette?lang=en-gb) - Senior developer for Gremlin, TinkerPop and Titan DB. * [Daniel Kuppitz](https://about.me/daniel.kuppitz) - One of the main developers of Gremlin. * [Jason Plurad](https://github.com/pluradj) - Senior Developer at IBM. TinkerPop committer and active on the community. ## <A NAME="tutorials-and-resources"></A>Tutorials and Resources * [Introduction to Gremlin](http://tinkerpop.apache.org/gremlin.html) - Official introduction to the Gremlin language. * [Datastax Introduction](https://academy.datastax.com/resources/getting-started-tinkerpop-and-gremlin) - A tutorial provided by Datastax to Gremlin and TinkerPop3. * [TinkerPop Book](http://www.tinkerpopbook.com/) - A long promised book for Tinkeprop but never fulfilled until now. You cans till request a notification. * [Linux Foundation Presentation](http://events.linuxfoundation.org/sites/events/files/slides/ApacheCon2015TinkerPop3.pdf) - A presentation by [Linux](/@harrisonqian/awesome/wiki/platforms/linux) Foundation given by David Robinson at IBM aboit Apache TinkerPop3. * [Getting Started with TinkerPop](http://tinkerpop.apache.org/docs/current/tutorials/getting-started/) - Learn the basics of getting up and going with TinkerPop. * [The Gremlin Console](http://tinkerpop.apache.org/docs/current/tutorials/the-gremlin-console/) - Discusses uses cases of the Gremlin Console and usage patterns. * [Gremlin Recipes](http://tinkerpop.apache.org/docs/3.2.1-SNAPSHOT/recipes/) - Reference for common traversal patterns and style. * [Gremlin Language Variants](http://tinkerpop.apache.org/docs/3.2.1-SNAPSHOT/tutorials/gremlin-language-variants/) - Learn how to embed Gremlin in a host programming language. * [SQL2Gremlin](http://sql2gremlin.com/) - Learn Gremlin using typical patterns found when querying data with SQL. * [Getting Started with Graph Databases](https://academy.datastax.com/demos/getting-started-graph-databases) - Compares relational databases to graph databases and SQL to Gremlin. * [Graph](https://github.com/krlawrence/graph) - Graph Databases, Gremlin and TinkerPop - A Tutorial. ## <A NAME="contributing"></A>How to Contribute  Please follow the [guidelines here](contributing.md). Please, make sure your contribution and PR are awesome! ## <A NAME="license"></A>License [](http://creativecommons.org/publicdomain/zero/1.0/) To the extent possible under law, [@mohataher](https://github.com/mohataher) has waived all copyright and related or neighboring rights to this work.