Awesome Neo4j Overview
A curated list of Neo4j resources.
🏠 Home · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor · 😺 neueda/awesome-neo4j · ⭐ 453 · 🏷️ Databases
Awesome Neo4j
A curated list of awesome Neo4j resources.
Inspired by the awesome-*
trend on GitHub.
The goal is to build a categorized community-driven collection of very well-known resources.
Sharing, suggestions and contributions are always welcome!
Thanks to all contributors (⭐453).
Maintained by Neueda R&D.
Table of Contents
- Basics
- Connectors
- Cloud
- Packages
- Docker
- Full-text search
- Import
- Benchmarking
- Extensions
- Stored Procedures
- Development
- Editors
- Shell
- Visualization
- Tools
- Resources
- License
Created by gh-md-toc (⭐459)
Basics
- Official documentation
- Cypher Refcard
- Developer resources
- Gists - With Neo4j GraphGists you can describe and model your domain in a simple text file and render it as a rich, interactive page in any browser. Perfect to document a specific domain, use-case, question or graph problem.
- Neo4j Examples - Examples for Neo4j and Library Usage.
Related project
- openCypher - openCypher is an open source project to bring a new public implementation of the industry’s most widely adopted graph query language: Cypher.
- Bolt Protocol - The Bolt network protocol is a highly efficient, lightweight client-server protocol designed for database applications.
Connectors
Bolt
- neo4j-java-driver (⭐282) - Java driver for Neo4j binary protocol.
- neo4j-python-driver (⭐746) - Python driver for Neo4j binary protocol.
- neo4j-javascript-driver (⭐771) - JavaScript driver for Neo4j binary protocol.
- neo4j-dotnet-driver (⭐178) - .Net driver for Neo4j (Bolt).
- neo4j-bolt-php (⭐41) - PHP driver for Neo4j binary protocol.
- libneo4j-client (⭐137) - libneo4j-client is a client library written in C for Neo4j. It is not intended as a complete driver, but rather as a foundation on which basic tools and drivers for various languages may be built. libneo4j-client takes care of all the detail of establishing a session with a Neo4j server, sending statements for evaluation, and retrieving results.
- neo4j-spark-connector (⭐293) - Neo4j-Spark-Connector based on Neo4j 3.0's Bolt protocol
- neo4j-elixir-driver (⭐28) - Elixir driver for the neo4j bolt protocol
- neo4j-elixir-wrapper (⭐237) - Neo4j driver for Elixir, wrapped around the Bolt protocol. Fork of the Boltex.
REST API
Java
- neo4j-ogm (⭐295) - Object-Graph Mapping Library for Neo4j.
- spring-data-neo4j (⭐760) - Provides support to increase developer productivity in Java when using the neo4j graph database.
- neo4j-jdbc (⭐109) - Neo4j JDBC driver.
- jcypher (⭐84) - Java access to Neo4J graph databases at multiple levels of abstraction.
Ruby
- neo4jrb (⭐1.4k) - An active model wrapper for the Neo4j Graph Database for Ruby.
- neography (⭐603) - A thin Ruby wrapper to the Neo4j Rest API.
Python
- py2neo (⭐64) - Py2neo is a comprehensive toolkit for working with Neo4j from within Python applications or from the command line.
- neomodel (⭐760) - An Object Graph Mapper (OGM) for the neo4j graph database, built on the awesome py2neo.
PHP
- Neo4j-PHP-OGM (⭐152) - Doctrine style Object Graph Mapper for Neo4j
- neo4jphp (⭐539) - PHP wrapper of the Neo4j REST interface.
- NeoEloquent (⭐582) - A Neo4j ORM - Based on Eloquent.
- neo4j-php-client (⭐287) - PHP Client for Neo4j leveraging the Http and Bolt protocols.
- Spider (⭐24) - A simple, flexible, and beautiful graph-data abstraction for php.
Other
- node-neo4j (⭐929) - REST API client for Node.
- Neo4jClient (⭐391) - .NET client binding.
- neoism (⭐388) - Client for Golang.
- neocons (⭐202) - A feature rich idiomatic Clojure client for the REST API.
- RNeo4j (⭐236) - Driver for R.
- AnormCypher (⭐125) - Scala library based on Anorm in the Play Framework.
Cloud
- GrapheneDB - The world's first fully managed Neo4j graph database.
- GraphStory - Neo4j enterprise cloud provider
Packages
Docker
- docker-neo4j (⭐278) - Docker Images for the Neo4j Graph Database.
- docker-neo4j-cluster (⭐42) - Up & Running Neo4j cluster in no time.
Full-text search
- GraphAware Neo4j Elasticsearch Integration (⭐258) - GraphAware Framework Module for Integrating Neo4j with Elasticsearch.
- GraphAware Graph-Aided Search (⭐154) - Elasticsearch plugin offering Neo4j integration for Personalized Search.
- neo4j-elasticsearch (⭐200) - Neo4j ElasticSearch Integration.
Import
- GraphAware Neo4j Importer (⭐24) - Java importer skeleton for complicated, business-logic-heavy high-performance Neo4j imports directly from SQL databases, CSV files, etc.
- neo4j-csv-firehose (⭐12) - Enables Neo4j’s
LOAD CSV
Cypher command to load from other datasources as well. - neo4j-rdbms-import (⭐41) - An automatic importer for relational databases into Neo4j.
- Doc manager for Neo4j (⭐95) - The Neo4j Doc Manager takes MongoDB documents and makes it easy to query them for relationships by making them available in a Neo4j graph structure, following the format specified by Mongo Connector.
- neoloadcsvskelgen (⭐1) - Will output a skeleton of LOAD CSV Cypher code, from very little input (filename, separator, hints). Save time, avoid typos.
Benchmarking
- neoprofiler (⭐34) - Neo4J database profiling utility.
Extensions
- GraphAware Neo4j UUID (⭐102) - GraphAware Runtime Module that assigns a UUID to all nodes in the graph transparently.
- GraphAware Neo4j ChangeFeed (⭐16) - A GraphAware Framework Runtime Module allowing users to find out what were the latest changes performed on the graph.
- GraphAware Neo4j TimeTree (⭐205) - Java and REST APIs for working with time-representing tree in Neo4j.
- GraphAware Neo4j Recommendation Engine (⭐371) - Neo4j-based recommendation engine module with real-time and pre-computed recommendations.
- GraphAware Neo4j Algorithms (⭐34) - Custom graph algorithms for Neo4j with own Java and REST APIs.
- GraphAware Neo4j Warmup (⭐10) - Simple library that warms up Neo4j caches with a single REST call.
- GraphAware Neo4j RestTest (⭐13) - GraphAware RestTest is a simple library for testing code that talks to Neo4j running in standalone server mode.
- GraphAware Neo4j Expire (⭐30) - GraphAware Expire is a simple library that automatically deletes nodes and relationships from the database when they've reached their expiration date or time-to-live (TTL).
- Spatial (⭐738) - Neo4j Spatial is a library of utilities for Neo4j that faciliates the enabling of spatial operations on data.
- Graphify (⭐379) - Graphify is a Neo4j unmanaged extension used for document and text classification using graph-based hierarchical pattern recognition.
- neo4j-tx-participation (⭐3) - This is a Neo4j Server Extension to make Neo4j REST-API participate in transactions started by the transactional Cypher endpoint.
Stored Procedures
- Apoc : Awesome Procedures on Cypher (⭐1.5k) - Collection of useful procedures for Neo4j 3.x
- Graphgen (⭐8) - Neo4j procedure for generating test data easily with Cypher
Development
- Maven repositories - Neo4j Maven repositories (releases, snapshots).
- GraphAware Neo4j Framework (⭐245)- GraphAware Framework speeds up development with Neo4j by providing a platform for building useful generic as well as domain-specific functionality, analytical capabilities, (iterative) graph algorithms, etc.
- cypher-dsl (⭐162) - A Java DSL for the Cypher Query Language and an optional Query DSL mode.
- Liquigraph (⭐122) - Database migrations management tool, based on how Liquibase works.
- blueprints (⭐1.3k) - Blueprints is a collection of interfaces, implementations, ouplementations, and test suites for the property graph data model. Blueprints is analogous to the JDBC, but for graph databases.
- structr (⭐686) - Graph Application Platform based on Neo4j.
- Reco4PHP (⭐131) - Neo4j based Recommendation Engine Framework for PHP.
Editors
- jetbrains-plugin-graph-database-support (⭐210) - Graph Databases support for Jetbrains family IDE's.
- cypher-vim-syntax (⭐38) - Very basic Vim syntax for Cypher.
Shell
- cycli (⭐272) - A Command Line Interface for Cypher.
- neo4j-shell-tools (⭐287) - A bunch of import/export tools for the neo4j-shell.
Visualization
- neoclipse (⭐212) - Neoclipse is a tool to view, edit and explore Neo4j databases.
- Gephi (⭐5k) - Gephi is an award-winning open-source platform for visualizing and manipulating large graphs.
- Linkurious - Linkurious helps search and visualize your graph data through a simple web-based interface.
- yFiles for HTML - yFiles is a commercial generic graph visualization programming library that comes with a demo to visualize your neo4j databases in JavaScript. It's also the basis for the free neo4j Graph Explorer app.
Tools
- Graphgen - Graph Generation engine based on the Cypher DSL.
- store-utils (⭐91) - Utilities to compact, copy, fix, analyse Neo4j stores.
- ineo (⭐76)- A simple but useful Neo4j instance manager.
- yFiles neo4j Graph Explorer - A simple, free online tool to visualize your graph data and database schema.
Learn
- Getting Started with Neo4j
- Neo4j in Production
- Neo4j Koans (⭐322) - A koan-style tutorial in Java for Neo4j.
Certification
- Neo4j Certification - Become a Neo4j-Certified Professional.
Miscellaneous
License
To the extent possible under law, Neueda R&D has waived all copyright and related or neighboring rights to this work.