Skip to content

Config Reference

All options live in a TOML file (default: config.toml). Loaded once at server launch. Set CHATNOTE_CONFIG=/path/to/config.toml to override the path.

Top-level options

KeyTypeDefaultDescription
require_passwordbooltrueRequire login. false = anonymous per-visitor users, no login screen (demo mode).
allow_image_uploadsbooltrueEnable the image upload endpoint. Set false on public demos.
allow_link_previewsbooltrueEnable server-side link unfurling for persistent rooms. Never applies to in-memory rooms.
wipe_persistent_everystring"off"Scheduled full wipe interval. Accepts "off" or a duration like "1d", "12h", "30m".

[caps] section

KeyTypeDefaultDescription
max_rooms_per_userint200Maximum persistent rooms per user account.
max_messages_per_roomint5000Maximum messages in a persistent room.
max_message_charsint20000Maximum character length of a single message body.
max_image_bytesint2000000Maximum size in bytes of a single uploaded image (2 MB default).
max_mem_room_bytesint50000000Maximum heap bytes consumed by a single in-memory room (50 MB default).

Duration format

wipe_persistent_every accepts: "off", "30s", "30m", "12h", "1d". Any other value is treated as "off".

Environment variable

bash
CHATNOTE_CONFIG=/etc/chatnote/config.toml node dist/server/entry.mjs

Released under the Apache-2.0 License.