A thin Ruby wrapper for the Neo4j REST API, providing programmatic access to graph database operations.
Neography is a Ruby gem that provides a thin wrapper around the Neo4j REST API, allowing Ruby developers to interact with Neo4j graph databases programmatically. It simplifies tasks like node creation, relationship management, index operations, and query execution, enabling seamless integration of graph data into Ruby applications.
Ruby developers building applications that require graph database capabilities, such as social networks, recommendation engines, or data analysis tools using Neo4j.
Developers choose Neography for its straightforward Ruby-centric API, comprehensive feature set covering Neo4j's REST endpoints, and active community support, making it easier to leverage graph databases without deep diving into low-level HTTP calls.
A thin Ruby wrapper to the Neo4j Rest API
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a clean Ruby interface to Neo4j's REST API, handling HTTP calls and JSON parsing automatically, as shown in the configurable Neography::Rest class for easy setup.
Covers all major Neo4j REST endpoints including nodes, relationships, indexes, Cypher queries, Gremlin scripts, and batch operations, detailed extensively in the Wiki documentation.
Phase 2 API mimics Neo4j.rb with direct property access (e.g., node.name) and intuitive relationship traversal methods, making code more Ruby-like and readable.
Raises Ruby errors for REST API failures, improving debuggability compared to older versions that didn't handle errors, as noted in the README's error handling section.
Inherent latency and performance cost compared to direct Java bindings, as all interactions require HTTP communication with a separate Neo4j server, which can bottleneck high-throughput applications.
Cannot access features exclusive to Neo4j's embedded mode or Java API, such as certain graph algorithms or server-side extensions, as the README admits Neo4j.rb is better for 'full power'.
The object-oriented API is labeled 'Phase 2' and mimics Neo4j.rb but may lack full parity or stability, potentially leading to inconsistencies or missing methods compared to the core REST wrapper.