Config

Set SVEX_CONFIG_JSON to a JSON object. All keys are optional; defaults apply.

{
  "local": { "enabled": true },
  "ephemeral": { "enabled": true, "ttlHours": 48 },
  "workspace": { "enabled": true },
  "session": { "ttlDays": 30 },
  "storage": { "maxSizePerEphemeralWhiteboardBytes": 5242880, "maxSizePerWorkspaceWhiteboardBytes": 20971520 }
}

local

Local folder mode: pick a folder on your computer, each whiteboard is a file there.

KeyTypeDefaultDescription
enabledbooleantrueEnable local folder.

ephemeral

Ephemeral rooms: temporary rooms that expire after inactivity.

KeyTypeDefaultDescription
enabledbooleantrueEnable ephemeral rooms.
ttlHoursnumber48TTL in hours from last activity.
createAllowedForguest | trusted | adminguestMinimum user level to create.
maxEphemeralnumber or Record<guest|trusted|admin, number>5Max ephemeral rooms per user (or per user type).

workspace

Persistent workspaces: named workspaces with custom URLs, boards don’t expire.

KeyTypeDefaultDescription
enabledbooleantrueEnable workspaces.
createAllowedForguest | trusted | admintrustedMinimum user level to create.
maxCollectionsnumber or Record<guest|trusted|admin, number>5Max collections per workspace.
maxWhiteboardsnumber or Record<guest|trusted|admin, number>50Max whiteboards per workspace.
maxWorkspacesnumber or Record<guest|trusted|admin, number>3Max workspace grants per user (or per user type).

session

Session lifetime and per-user-type limits.

KeyTypeDefaultDescription
ttlDaysnumber30Session TTL in days from last activity. Cookie maxAge and cleanup use this.
emptySessionRetentionDaysnumber7Keep empty sessions (no grants) for this many days from creation.

storage

Size limits for whiteboards and workspaces.

KeyTypeDefaultDescription
maxSizePerEphemeralWhiteboardBytesnumber5242880 (5 MB)Max size per ephemeral whiteboard. Saves over this are rejected.
maxSizePerWorkspaceWhiteboardBytesnumber20971520 (20 MB)Max size per workspace whiteboard (local or remote). Saves over this are rejected.
maxWorkspaceBytesnumber104857600 (100 MB)Max size per workspace (all whiteboards). Saves over this are rejected.
cleanupIntervalMinutesnumber15How often to run lifecycle cleanup (sessions, ephemeral rooms, orphaned workspaces).