Skip to content

Ecosystem & Tooling

Note: This page describes the intended developer experience. The crates/vox-cli binary implements a subset of commands today (build, check, test, run, bundle; fmt / install fail until wired; lsp). Authoritative current flags: ref-cli.md.

Vox ships with a complete development toolchain: compiler, bundler, test runner, formatter, package manager, and language server — converging on the vox CLI as the primary entry point.


Compile a .vox file to Rust and TypeScript:

Terminal window
# Basic build
vox build app.vox -o dist

Watch mode and other flags may land later; use vox build --help and ref-cli.md for what the binary exposes now.

Typical output layout (minimal CLI) — filenames vary by program; Rust lands under target/generated/:

dist/
├── backend/ # Generated Rust (Axum server)
│ ├── src/
│ │ └── main.rs
│ └── Cargo.toml
└── frontend/ # Generated TypeScript (React)
├── src/
│ └── App.tsx
└── package.json

Ship a single statically-linked binary containing frontend + backend + SQLite:

Terminal window
# Release build targeting Linux
vox bundle app.vox --release --target x86_64-unknown-linux-musl
# Debug build (default)
vox bundle app.vox

Run @test decorated functions:

Terminal window
vox test tests.vox

This compiles the test functions to Rust #[test] blocks and runs them with cargo test.

Minimal binary today: vox fmt exits with an error until vox-fmt matches the current AST. Formatting work lives in the vox-fmt crate.

Terminal window
vox fmt app.vox

See ref-cli.md.

Launch the Language Server Protocol server:

Terminal window
vox lsp

See Language Server below for details.

Package management (vox add / vox sync / vox pm)

Section titled “Package management (vox add / vox sync / vox pm)”

vox install is removed (no CLI subcommand). Use vox add, vox lock, vox sync, and vox pm per reference/cli.md; see the full mapping in pm-migration-2026.md.

Offline trees: use vox pm vendor. Populate .vox_modules/dl/ with vox sync first.


The vox-lsp crate provides IDE support via the Language Server Protocol.

FeatureStatus
Syntax error diagnostics✅ Implemented
Type error diagnostics✅ Implemented
Go to Definition🔜 Planned
Completion🔜 Planned
Hover info🔜 Planned
  1. Build the LSP server:

    Terminal window
    cargo build --release -p vox-lsp
  2. Configure your editor:

    VS Code (with the vox-vscode extension or manual configuration):

    "vox.lsp.serverPath": "/path/to/target/release/vox-lsp"

The LSP server integrates the full compiler pipeline — when you save a file, it re-runs the lexer, parser, and type checker to provide real-time diagnostics.


The Vox package manager uses a Content-Addressable Store (CAS) backed by libSQL/Turso.

store(data) → SHA3-256 hash
get(hash) → data

All artifacts are stored by their content hash:

  • Deterministic — same content always produces the same hash
  • Deduplication — identical artifacts share a single stored copy
  • Integrity — content can be verified against its hash at any time
ModeUse Case
Remote (Turso)Production — cloud-hosted database
Local SQLiteDevelopment — local file storage
In-MemoryTesting — ephemeral database
Embedded ReplicaHybrid — local cache with cloud sync

The package manager includes a de Bruijn indexing normalizer that strips identifier names from AST nodes and replaces bound variables with positional indices. This enables detection of semantically identical code regardless of naming differences.

bind_name(namespace, name, hash) # Map a name to content
lookup_name(namespace, name) → hash # Resolve a name to content
search_code_snippets(query, limit) # Vector-similarity search

The store also manages agent memory for AI-powered features:

recall_async(agent, type, limit, min_importance) # Query with relevance filtering

Terminal window
# Linux / macOS
./scripts/install.sh # End-user install
./scripts/install.sh --dev # Full contributor setup
./scripts/install.sh plan # JSON install plan (CI/tooling)
# Windows (PowerShell)
.\scripts\install.ps1 # End-user install
.\scripts\install.ps1 -Dev # Full contributor setup
.\scripts\install.ps1 plan # JSON install plan (CI/tooling)

Prerequisites: Rust >= 1.75, Node.js >= 18, C compiler (gcc/clang/MSVC). Full workspace + Turso crates: clang on Linux/macOS; clang-cl (LLVM) on Windows — see docs/src/how-to-setup.md.

Terminal window
cargo install --locked --path crates/vox-cli

Note: Node.js and npm are required at runtime for vox bundle and vox run (frontend scaffolding). Copy .env.example to .env to configure optional API keys.


Terminal window
cargo build --workspace
Terminal window
cargo test --workspace
Terminal window
cargo fmt --all -- --check # Format check
cargo clippy --workspace # Lint check