Installation¶
Requirements¶
Python 3.14 or newer
A running graph database instance (see backend sections below)
The core runic-py package has no graph-driver dependency. Install only
the optional extra for the backend you use.
Install from PyPI¶
# FalkorDB
uv add "runic-py[falkordb]"
# Neo4j
uv add "runic-py[neo4j]"
# Memgraph (uses the Neo4j Bolt driver)
uv add "runic-py[memgraph]"
# ArcadeDB (uses the Neo4j Bolt driver)
uv add "runic-py[arcadedb]"
# Apache AGE (PostgreSQL extension, requires psycopg)
uv add "runic-py[age]"
# All backends at once
uv add "runic-py[all]"
Available extras¶
Extra |
Package installed |
Backend |
|---|---|---|
|
|
FalkorDB |
|
|
Neo4j |
|
|
Memgraph |
|
|
ArcadeDB |
|
|
Apache AGE (PostgreSQL) |
|
all of the above |
every supported backend |
Verify the installation:
runic --help
You should see the runic help text listing all available commands.
FalkorDB¶
Start a local FalkorDB instance with Docker:
docker run -p 6379:6379 falkordb/falkordb
For integration testing without an external server, install falkordblite:
uv add --dev falkordblite
See Testing Migrations for how to use the embedded server in your test suite.
Neo4j¶
Start a local Neo4j instance with Docker:
docker run -p 7474:7474 -p 7687:7687 neo4j:latest
Memgraph¶
Memgraph speaks the Bolt protocol, so the memgraph extra installs the
Neo4j driver:
docker run -p 7687:7687 memgraph/memgraph
ArcadeDB¶
ArcadeDB also exposes a Bolt endpoint. The arcadedb extra installs the
Neo4j driver:
docker run -p 2480:2480 -p 2424:2424 -p 7687:7687 arcadedata/arcadedb
Apache AGE¶
Apache AGE is a PostgreSQL extension. The age extra installs
psycopg[binary]:
docker run -p 5432:5432 -e POSTGRES_PASSWORD=postgres apache/age
Development install¶
Clone the repository and install all dev dependencies:
git clone https://github.com/jenreh/runic
cd runic
uv sync --all-groups