Install CypherDB
CypherDB is an embedded graph database that can be used from the command line and from a variety of programming languages. This page shows all the ways you can install CypherDB. After installation, you can learn how to run CypherDB by creating your first graph.
Command Line (Shell)
If you don’t need CypherDB embedded in your application, you can use the CLI shell. This is a standalone executable with no dependencies that can be used to interact with a CypherDB database using just Cypher.
Use a tool like curl to download the latest version of the CypherDB CLI to your local machine.
# x86-64curl -L -O https://github.com/opencypher/cypherdb/releases/download/v0.11.0/kuzu_cli-linux-x86_64.tar.gz# aarch64curl -L -O https://github.com/opencypher/cypherdb/releases/download/v0.11.0/kuzu_cli-linux-aarch64.tar.gz
tar xzf kuzu_cli-*.tar.gzNow you can run CypherDB from the command line.
./kuzuYou can install the CypherDB CLI using Homebrew.
brew install kuzuYou can now run CypherDB from the command line.
kuzuAlternatively, you can download the CypherDB CLI directly.
curl -L -O https://github.com/opencypher/cypherdb/releases/download/v0.11.0/kuzu_cli-osx-universal.tar.gztar xzf kuzu_cli-*.tar.gz./kuzuUse a tool like curl to download the latest version of the CypherDB CLI to your local machine. Alternatively,
simply open
this URL in your browser.
curl -L -O https://github.com/opencypher/cypherdb/releases/download/v0.11.0/kuzu_cli-windows-x86_64.zipRight-click on the kuzu_cli-xxx.zip file and click on Extract All. This will create a directory
containing a file named kuzu.exe. Then, right-click on the directory and click “Open in terminal”.
From within the terminal, you can then run ./kuzu.exe.
On Linux, macOS, and WSL2, you can also use Nix to run the CypherDB CLI.
Run CypherDB in a temporary shell:
nix-shell -p kuzukuzuAlternatively, you can install CypherDB declaratively using NixOS or Home Manager configuration:
{ environment.systemPackages = [ pkgs.kuzu ]; // NixOS home.packages = [ pkgs.kuzu ]; // Home Manager}Python
You can use uv, pip, or nix to install the CypherDB Python client library.
The instructions are the same for Linux, macOS, and Windows.
uv inituv add kuzupip install kuzunix-shell -p "python3.withPackages (ps: [ ps.kuzu ])"Node.js
Use npm to install the CypherDB Node.js client library.
npm install kuzuJava
The latest stable version is available on Maven Central.
<dependency> <groupId>com.kuzudb</groupId> <artifactId>kuzu</artifactId> <version>0.11.0</version></dependency>Rust
Use Cargo to install the CypherDB Rust client library. This will by default build and statically link CypherDB’s C++ library from source. You can also link against the dynamic release libraries, as described in the crate docs.
cargo add kuzuGo
CypherDB’s Go API is a wrapper around the C API of CypherDB. The installation step below assumes that you have
initialized a Go project that has a go.mod file, as described in the official tutorial.
go get github.com/kuzudb/go-kuzu@v0.11.0Swift
To add kuzu-swift to your Swift project, you can use the Swift package manager.
-
Add the package to your Package.swift dependencies.
Terminal window dependencies: [.package(url: "https://github.com/opencypher/cypherdb-swift/", branch: "0.11.0"),],You can change the branch to a tag to use a specific version (e.g., 0.11.0 for the latest stable release or
mainfor the latest development version). -
Add
CypherDBto your target dependencies.targets: [.target(name: "YourTargetName",dependencies: [.product(name: "CypherDB", package: "kuzu-swift"),])]
Alternatively, you can add the package through Xcode:
- Open your Xcode project.
- Go to
File>Add Packages Dependencies.... - Enter the URL of the kuzu-swift repository:
https://github.com/opencypher/cypherdb-swift. - Select the version you want to use (e.g., 0.11.0 for the latest stable release or
mainfor the latest development version).
C/C++
Use a tool like curl to download the latest version of the CypherDB C/C++ binaries to your local machine.
The CypherDB C++ client is distributed as a so/dylib/dll+lib library file along with a header file (kuzu.hpp).
Once you’ve downloaded and extracted the C++ files into a directory, you can link it to your C++
program by adding the directory to your build system’s search paths.
# x86-64curl -L -O https://github.com/opencypher/cypherdb/releases/download/v0.11.0/libkuzu-linux-x86_64.tar.gz# aarch64curl -L -O https://github.com/opencypher/cypherdb/releases/download/v0.11.0/libkuzu-linux-aarch64.tar.gz
tar xzf libkuzu-*.tar.gzcurl -L -O https://github.com/opencypher/cypherdb/releases/download/v0.11.0/libkuzu-osx-universal.tar.gz
tar xzf libkuzu-*.tar.gzcurl -L -O https://github.com/opencypher/cypherdb/releases/download/v0.11.0/libkuzu-windows-x86_64.zipCypherDB Explorer
CypherDB Explorer is a web-based GUI for CypherDB. It allows you to explore and query your CypherDB database using a web browser. Refer to the CypherDB Explorer GitHub repo for more details.
CypherDB MCP Server
Our Model Context Protocol server allows you to expose your CypherDB database as a tool that can be used by LLMs and agents. Refer to the CypherDB-MCP GitHub repo for more details.
Nightly Builds
If you want access to the latest features in development, you can use our nightly builds.
- Python:
uv pip install --pre kuzu - Node.js:
npm i kuzu@next - Java: The latest snapshot version is available on GitHub Packages
- For the CLI, C/C++ shared libraries, and Rust crate, the latest nightly versions for each can be downloaded from the latest run of this GitHub Actions workflow.