Quick Start Guide
Get OpenDocuments running in under 5 minutes.
Installation
Option 1: One-Line Script (Recommended)
To install the latest pre-compiled single-binary (Linux & macOS):
curl -fsSL https://raw.githubusercontent.com/cawa0505/OpenDocuments/main/install.sh | shOption 2: Cargo Install via GitHub (Rust Developers)
INFO
Requires protoc (protobuf compiler) installed on your system. We pass RUSTC_BOOTSTRAP=1 to allow raising the internal compiler recursion limit for compiling heavy asynchronous dependency trees like lance and arrow, and pass --cfg=rustix_use_libc to prevent compilation errors caused by nightly features in older rustix versions.
RUSTC_BOOTSTRAP=1 RUSTFLAGS="-Z min-recursion-limit=512 --cfg=rustix_use_libc" cargo install --git https://github.com/cawa0505/OpenDocuments opendoc --forceOption 3: Build from Source
Prerequisites:
- Rust toolchain (1.80+) — installed via rustup.rs
- Make — standard build utility
# Clone the repository
git clone https://github.com/cawa0505/OpenDocuments.git
cd OpenDocuments
# Build the WebUI and install the Rust CLI automatically
make installThis compiles and places the opendoc binary in your user's cargo binary path (e.g., ~/.cargo/bin or %USERPROFILE%\.cargo\bin), which is automatically available in your PATH.
Start the Server
opendoc start --port 3000Open http://localhost:3000 — you will see a beautiful chat UI, document manager, and admin stats dashboard. The frontend is served directly from the memory of the opendoc binary!
Workspace & Document Indexing
OpenDocuments works on Workspaces (isolated folders with independent SQLite databases and LanceDB vector stores).
# Index a local directory into your active workspace
opendoc document index /path/to/docsOr simply drag-and-drop your files directly onto the Web UI!
Next Steps
- Deployment & Auto-Start — run persistently on Windows, macOS, and Linux
- Architecture — understand the single-binary Rust design
- MCP Server — hook OpenDocuments up as a local knowledge base for Claude Code and Cursor