| Variable | Default | Description |
|---|---|---|
MERIDIAN_BIND | 0.0.0.0:3000 | TCP bind address |
MERIDIAN_DATA_DIR | ./data | Path to sled storage directory |
MERIDIAN_SIGNING_KEY | (random) | 64-char hex ed25519 seed (32 bytes) |
MERIDIAN_WEBHOOK_URL | (unset) | HTTP endpoint to receive webhook events |
MERIDIAN_WEBHOOK_SECRET | (unset) | Secret for X-Meridian-Signature HMAC-SHA256 |
MERIDIAN_SIGNING_KEY
Generate a secure key:Webhooks
WhenMERIDIAN_WEBHOOK_URL is set, Meridian sends a POST request to that URL after every successful CRDT operation.
Payload
source is either "http" (REST op) or "ws" (WebSocket op).
Signature verification
Every request includes an X-Meridian-Signature header containing HMAC-SHA256(secret, body) as a lowercase hex string.
Rate limiting
Each token is limited to 100 requests per second (sliding window). Requests over the limit return429 Too Many Requests:
Metrics
Meridian exposes a Prometheus-compatible metrics endpoint atGET /metrics (no authentication required).
| Metric | Type | Description |
|---|---|---|
meridian_ops_total | Counter | CRDT operations applied, labeled by ns, crdt_id, op_type |
meridian_ws_connections_active | Gauge | Active WebSocket connections |
meridian_wal_entries_total | Counter | WAL entries written |