Skip to content

Installation

The fastest way to try Graft is the CLI. Applications can later load the SQLite extension or link the extension statically.

Install the version documented by this site:

Terminal window
curl -fsSL https://raw.githubusercontent.com/eidos-space/graft/main/install.sh \
| GRAFT_VERSION=0.8.0 sh

Then check the binary:

Terminal window
graft --version
# graft 0.8.0

Prebuilt archives are also available from the GitHub releases page.

From the repository root:

Terminal window
cargo build -p graft-tool --bin graft --release

The binary is written to:

target/release/graft

Add it to your shell path:

Terminal window
mkdir -p ~/.local/bin
ln -sf "$(pwd)/target/release/graft" ~/.local/bin/graft
hash -r
graft --help

Build the dynamic SQLite extension:

Terminal window
cargo build -p graft-ext --release

The exact library filename depends on the platform. It is written under target/release/ and can be loaded by SQLite:

.load ./libgraft_ext

Use the extension when your app deliberately wants the Graft VFS as a live page-storage data plane. Repository commands are not exposed as SQLite PRAGMAs; use the CLI and its JSON output for the control plane.

The documentation site lives in docs/:

Terminal window
cd docs
pnpm install
pnpm build

Run the CLI quickstart first. Use the SQLite extension quickstart only when the application deliberately opts into the Graft VFS.