Package neoism
is a Go client library providing access to
the Neo4j graph database via its REST API.
Go 1.1 or later is required.
Neo4j Milestone 2.0.0-RC1 or greater is required to run the full test suite.
See Go Walker or GoDoc for automatic documentation.
This driver is fairly complete, and may now be suitable for general use. The code has an extensive set of integration tests, but little real-world testing. YMMV; use in production at your own risk.
If you decide to use neoism
in a production system, please let me know. All
API changes will be made via Pull Request, so it's highly recommended you Watch
the repo Issues. The API is fairly stable, but there are additions and small
changes from time to time.
- Node (create/edit/relate/delete/properties)
- Relationship (create/edit/delete/properties)
- Legacy Indexing (create/edit/delete/add node/remove node/find/query)
- Cypher queries
- Batched Cypher queries
- Transactional endpoint (Neo4j 2.0)
- Node labels (Neo4j 2.0)
- Schema index (Neo4j 2.0)
- Streaming API support - see Issue #22
Unique Indexes- probably will not expand support for legacy indexing.Automatic Indexes- "- Traversals - May never be supported due to security concerns. From the manual: "The Traversal REST Endpoint executes arbitrary Groovy code under the hood as part of the evaluators definitions. In hosted and open environments, this can constitute a security risk."
- Built-In Graph Algorithms
- Gremlin
Contributions, in the form of Pull Requests or Issues, are gladly accepted. Before submitting a Pull Request, please ensure your code passes all tests, and that your changes do not decrease test coverage. I.e. if you add new features, also add corresponding new tests.
Paid support, development, related professional services, and proprietary licensing terms for this package are available from from the author.
This is Free Software, released under the terms of the GPL v3.