Skip to main content

CypherDB is a lightweight, zero-dependency, embedded graph database written entirely in Go. Think of it as SQLite for Graph Databases

Project description

CypherDB

The Minimalist Embedded Graph Database in Pure Go with Python bindings

PyPI version Go Reference Go Version License: MIT Go Report Card


📖 Project Overview

CypherDB (formerly GoGraph) is a lightweight, zero-dependency, embedded graph database written entirely in Go. Think of it as "SQLite for Graph Databases".

It allows Go and Python developers to execute Cypher queries (the standard graph query language) and manage local graph data—nodes, relationships, and properties—without the overhead of external heavy database services like Neo4j.

⚡ Quick Start

1. Install Python Package

pip install cypherdb

Basic Example:

import cypherdb

# Create database
db = cypherdb.Database("my_graph.db")

# Use transaction with context manager
with db.transaction() as tx:
    node_id = tx.create_node("Person", {"name": "Alice"})
    print(f"Created node: {node_id}")
    # Auto-commit

# Manual transaction
tx = db.transaction()
try:
    tx.create_node("Person", {"name": "Bob"})
    tx.commit()
except:
    tx.rollback()

2. Install CLI (Go)

The fastest way to explore CypherDB is via the CLI.

macOS / Linux (Homebrew):

brew install dotnetage/tap/gograph

Run TUI (Interactive Shell):

# Simply run without arguments to open default.db in interactive mode
gograph

✨ Key Features

  • 🚀 Pure Go: No CGO, seamless cross-platform support.
  • 🐍 Python Bindings: Easy integration with Python applications.
  • 📦 Embedded: Zero-config, single-directory storage (Pebble DB).
  • 🔍 Cypher Support: Native MATCH, CREATE, SET, DELETE.
  • 🛡️ ACID: MVCC, thread-safety, and WAL recovery.
  • 🛠️ TUI Included: Interactive shell with auto-completion and ASCII tables.

💻 CLI Usage

The gograph binary provides a powerful TUI and command-line utilities.

Command Description
gograph Launch Interactive TUI (default to default.db)
gograph query <cypher> Run a read-only query
gograph exec <cypher> Run a data modification command

Example:

gograph query "MATCH (n) RETURN n"

🧩 System Compatibility

  • OS: macOS, Linux, Windows.
  • Arch: amd64, arm64.
  • Python: 3.9+

📚 Documentation

Check out the full Documentation or the Docs Folder.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cypherdb-0.2.3.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cypherdb-0.2.3-cp314-cp314-macosx_26_0_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.14macOS 26.0+ x86-64

File details

Details for the file cypherdb-0.2.3.tar.gz.

File metadata

  • Download URL: cypherdb-0.2.3.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for cypherdb-0.2.3.tar.gz
Algorithm Hash digest
SHA256 6bbbfa2c9f4a97d9e00f175458877f3a1dea5a193f30478dc5e8929bd949c9d7
MD5 30c19795e858618b72eb05259b0ce6db
BLAKE2b-256 a2d52bb912b116c19e21020ac55d764b15e923036c3e615ea62cc29703c66ad1

See more details on using hashes here.

File details

Details for the file cypherdb-0.2.3-cp314-cp314-macosx_26_0_x86_64.whl.

File metadata

File hashes

Hashes for cypherdb-0.2.3-cp314-cp314-macosx_26_0_x86_64.whl
Algorithm Hash digest
SHA256 5a3940a6e43358f217c94cce9fa5f2061320afd586bd906c58c62293f43b9013
MD5 b2858c63b9a93ccdee35d7bb03626abe
BLAKE2b-256 b1e66d12baeaa7a931508088db19b4b800a0428b82edd92762ac8648ac2dad25

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page