openvibers/openvibe.wiki .env.example
.env.example
| 1 | # ═══════════════════════════════════════════════════════════════ |
| 2 | # OpenVibe.Wiki — Environment Configuration |
| 3 | # Copy to .env and fill in values. In production this lives at /etc/openvibe/wiki.env (0600); |
| 4 | # the systemd unit sets NODE_ENV and PORT itself. Names only here: never commit values. |
| 5 | # ═══════════════════════════════════════════════════════════════ |
| 6 | |
| 7 | # Server |
| 8 | PORT=4800 |
| 9 | HOST=127.0.0.1 |
| 10 | NODE_ENV=development |
| 11 | #BASE_URL=https://openvibe.wiki |
| 12 | # Hops in front of Node that set X-Forwarded-For (Cloudflare → nginx → Node). |
| 13 | #TRUST_PROXY=2 |
| 14 | # Per-actor limits (server/http/actor-limits.js): API reads one caller (a person, a service or app |
| 15 | # acting as itself, else an address) may make per minute and per hour; past them 429 rate_limited with |
| 16 | # Retry-After. Edits, publishing and settings have their own numbers (README). Per-address limits stay. |
| 17 | #WIKI_LIMITS_MINUTE=120 |
| 18 | #WIKI_LIMITS_HOUR=3000 |
| 19 | |
| 20 | # Store: PostgreSQL (ADR-035), written by OpenVibe.Host roles/data/add-service.sh wiki — the runtime role through |
| 21 | # PgBouncer, the owner on a direct connection (migrations), and Valkey (shared limit counters). |
| 22 | # Without DATABASE_URL, development uses an embedded PGlite database in data/pglite. |
| 23 | DATABASE_URL= |
| 24 | DATABASE_DIRECT_URL= |
| 25 | VALKEY_URL= |
| 26 | VALKEY_PREFIX= |
| 27 | |
| 28 | # Identity — OpenVibe.Network signs user JWTs (SSO) and service tokens. The public key is fetched |
| 29 | # from <url>/api/.well-known/jwks (internal URL first) and retried every 30 s until it loads. |
| 30 | OV_NETWORK_URL=https://openvibe.network |
| 31 | OV_NETWORK_INTERNAL_URL=http://127.0.0.1:4000 |
| 32 | #OV_NETWORK_ISSUER=https://openvibe.network |
| 33 | # Pin the key instead of fetching it (PEM; \n escapes allowed). |
| 34 | #OV_NETWORK_PUBLIC_KEY= |
| 35 | # A browser's user JWT is accepted when its aud contains one of these. |
| 36 | #WIKI_USER_AUDIENCES=openvibe.wiki,openvibe.network |
| 37 | |
| 38 | # OAuth client `wiki` (browser sign-in, redirect <BASE_URL>/auth/callback) and service principal |
| 39 | # svc:wiki (client credentials for Events, Community, Sources and Media) — one registration. |
| 40 | OV_OAUTH_CLIENT_ID=wiki |
| 41 | OV_OAUTH_CLIENT_SECRET= |
| 42 | #OV_OAUTH_REDIRECT_URI=https://openvibe.wiki/auth/callback |
| 43 | #COOKIE_SECURE=true |
| 44 | |
| 45 | # OpenVibe.Events — the outbox relay runs only when EVENTS_URL is set (events wait in the outbox until then). |
| 46 | #EVENTS_URL=http://127.0.0.1:4300 |
| 47 | # OpenVibe.Events → Wiki (ADR-033 account export and deletion): signs a delivery to POST /internal/events |
| 48 | # (comma-separated for rotation, 32+ characters each). Unset: the route answers 503 and no subscription is created. |
| 49 | #WIKI_EVENTS_SECRET= |
| 50 | #EVENTS_RELAY_INTERVAL_MS=2000 |
| 51 | |
| 52 | # OpenVibe.Community — discussion threads (community.comment.write; community.comment.moderate |
| 53 | # hides the thread of a page that is unpublished, deleted or no longer public). |
| 54 | #OV_COMMUNITY_URL=https://openvibe.community |
| 55 | #OV_COMMUNITY_INTERNAL_URL=http://127.0.0.1:4200 |
| 56 | |
| 57 | # OpenVibe.Sources — citation items (sources.item.read). Unset: Sources item citations are refused. |
| 58 | #OV_SOURCES_INTERNAL_URL=http://127.0.0.1:4720 |
| 59 | |
| 60 | # OpenVibe.Media — attachment checks (media.object.read, namespace WIKI_MEDIA_APP) and public URLs. |
| 61 | #OV_MEDIA_INTERNAL_URL=http://127.0.0.1:4100 |
| 62 | #OV_MEDIA_URL=https://openvibe.media |
| 63 | #WIKI_MEDIA_APP=wiki |
| 64 | # OpenVibe.AI — "vibe a wiki" (research.gather, wiki.generate_space, wiki.generate_page). Unset: /vibe answers that it is |
| 65 | # not available. Limits per person and per day, page counts by size, pages written at a time. |
| 66 | #OV_AI_INTERNAL_URL=http://127.0.0.1:4700 |
| 67 | #WIKI_VIBE_PER_PERSON_DAY=3 |
| 68 | #WIKI_VIBE_PER_DAY=30 |
| 69 | #WIKI_VIBE_PAGES_QUICK=6 |
| 70 | #WIKI_VIBE_PAGES_STANDARD=12 |
| 71 | #WIKI_VIBE_PAGES_BIG=24 |
| 72 | #WIKI_VIBE_CONCURRENCY=2 |
| 73 | #WIKI_MEDIA_VERIFY_INTERVAL_MS=21600000 |
| 74 | |
| 75 | # Scheduled publication worker. |
| 76 | #WIKI_SCHEDULE_INTERVAL_MS=15000 |
| 77 | #WIKI_WORKER_ID=wiki-1 |
| 78 | |
| 79 | # Indexability gate policy for pages (openvibe-publishing/seo). |
| 80 | #WIKI_GATE_MIN_WORDS=80 |
| 81 | #WIKI_GATE_REQUIRE_SOURCES=true |
| 82 | #WIKI_GATE_MIN_SOURCES=1 |
| 83 | |
| 84 | # Release reporting (openvibe-shared/release): the deployed commit, read from git when unset. |
| 85 | #RELEASE_COMMIT= |
| 86 | #MIN_CLIENT_RELEASE= |
| 87 |