# OpenVibe.Casino — environment (production: /etc/openvibe/casino.env). Names only; never commit values. NODE_ENV=production PORT=5210 HOST=127.0.0.1 BASE_URL=https://openvibe.casino TRUST_PROXY=2 # PostgreSQL (ADR-035), written by OpenVibe.Host roles/data/add-service.sh: the runtime role through PgBouncer, # the owner on a direct connection (migrations), and Valkey (shared limit counters). # Without DATABASE_URL, development uses an embedded PGlite database in data/pglite. DATABASE_URL= DATABASE_DIRECT_URL= VALKEY_URL= VALKEY_PREFIX=ov:casino: # Per-actor limits (server/http/api.js) and per-address limits (server/app.js). #CASINO_LIMITS_MINUTE=120 #CASINO_LIMITS_HOUR=3000 #CASINO_API_RATE_LIMIT_PER_MIN=240 #CASINO_RATE_LIMIT_PER_MIN=300 # OpenVibe.Network: SSO (OAuth client `casino`, PKCE S256) and its JWKS; app tokens for audience openvibe.casino. OV_NETWORK_URL=https://openvibe.network OV_NETWORK_INTERNAL_URL=http://127.0.0.1:4000 # OV_NETWORK_ISSUER=https://openvibe.network OV_OAUTH_CLIENT_ID=casino OV_OAUTH_CLIENT_SECRET= # OV_OAUTH_REDIRECT_URI=https://openvibe.casino/auth/callback # CASINO_AUDIENCE=openvibe.casino # OV_SESSION_AUDIENCE=openvibe.network # CASINO_PGLITE_DIR=./data/pglite # OpenVibe.Events: account export/deletion deliveries to POST /internal/events. The secret signs a delivery # (comma-separated for rotation, 32+ characters each; unset makes the route answer 503). CASINO_EVENTS_SECRET= CASINO_EVENTS_URL= #CASINO_EVENTS_ENDPOINT=http://127.0.0.1:5210/internal/events #CASINO_EVENTS_INTERVAL_MS=5000 # Simulations run on the server (POST /api/v1/simulate): the most rounds one may ask for, and how many an address may # run a minute. The simulator page runs in the visitor's browser and has neither limit. #CASINO_SIM_MAX_ROUNDS=200000 #CASINO_SIM_PER_MINUTE=6 # Drill mode (a restore drill): no subscriptions, no outbound calls at boot. #CASINO_DRILL=1