Installation
Build the Verne binary from source — it takes a few seconds.
Verne is distributed as a single binary written in V.
It links against libgc (provided by V) and depends on one external
runtime tool: the chroma
command-line binary, used for code-fence syntax highlighting.
Build from source
The current path while pre-built releases are not yet shipped:
git clone https://github.com/davlgd/Verne
cd Verne
mise run prod # or: v -prod -o verne src/
./verne version # → verne 0.1.0The repository ships a mise task file. If you do
not use mise, the underlying command is v -prod -o verne src/. Either way,
you end up with a ./verne binary — fully self-contained, statically linked
against libgc, ~2 MB.
Move it somewhere on $PATH (/usr/local/bin/, ~/.local/bin/, or
similar) when you are happy with it.
Runtime dependency: chroma
Code-fence syntax highlighting is delegated to the external
chroma binary. verne build
and verne server check at launch that chroma is runnable; if it is
not, they exit with a pointer to its install docs. Compiling Verne
itself does not need chroma.
Installing chroma
On macOS:
brew install chromaOn Linux:
go install github.com/alecthomas/chroma/v2/cmd/chroma@latest
# or download a pre-built binary from https://github.com/alecthomas/chroma/releases$VERNE_CHROMA_PATH
By default, Verne looks for chroma on $PATH. The $VERNE_CHROMA_PATH
environment variable overrides that lookup with a directory; the
special value . means “next to the verne binary”:
VERNE_CHROMA_PATH=/opt/tools/bin verne build
VERNE_CHROMA_PATH=. verne build # chroma alongside ./verneUseful for sandboxed environments and CI runners where you ship both binaries together.
Verifying the install
verne version
# verne 0.1.0If you see the version line, you are done. Move on to Quick start.