1.4 KiB
1.4 KiB
Configuration
Status: initial draft. Field semantics are finalised as the loader lands.
volumen is configured by a single TOML file. By default it lives at
/etc/volumen/config.toml and is auto-generated on first start. CLI flags
passed to volumen serve override the file.
Example config.toml
[server]
host = "0.0.0.0"
port = 9090
# Directory containing your Markdown posts.
content_dir = "/var/lib/volumen/posts"
[site]
title = "My Blog"
description = "A blog powered by volumen."
base_url = "https://example.com"
language = "en"
author = "Anonymous"
[admin]
# scrypt hash produced by `volumen hash-password`.
password_hash = ""
# Secret used to sign session cookies. Leave empty to auto-generate per start
# (sessions reset on restart).
session_key = ""
# Session lifetime in seconds (default 24h).
session_ttl = 86400
CLI overrides
volumen serve --config /etc/volumen/config.toml \
--content ./posts \
--host 127.0.0.1 \
--port 9000
Why TOML
- First-class dates —
date = 2026-01-15is a real date, not a string. - Explicit typing — no YAML-style implicit coercion (
no→ false, etc.). - No whitespace pitfalls — indentation is not significant.
The same format is used for post frontmatter; see the post format section in
the project README.md.