Skip to main content
World Monitor uses environment variables for configuration. Copy .env.example to .env.local and configure only the features you need.
All API keys are optional. The dashboard works without them, but corresponding features will be disabled.

AI Summarization

AI-powered news briefs use a 4-tier fallback chain: Ollama (local) → Groq → OpenRouter → Browser (Transformers.js).
string
Groq API key for fast LLM inference (Llama 3.1 8B). Primary cloud provider.Free tier: 14,400 requests/day
Get yours at: https://console.groq.com/
string
OpenRouter API key for multi-model fallback.Free tier: 50 requests/day
Get yours at: https://openrouter.ai/
string
default:"http://localhost:11434"
Ollama or LM Studio server URL for local AI inference. No data leaves your machine.Example: http://localhost:11434 (Ollama default)
Example: http://localhost:1234 (LM Studio default)
string
default:"llama3.1:8b"
Model name for local Ollama inference. Auto-discovered in desktop settings.Default: llama3.1:8b
Popular alternatives: mistral, qwen2.5:7b, gemma2:9b

Cross-User Cache (Redis)

Deduplicates AI calls and caches risk scores across all visitors.
string
Upstash Redis REST URL for global cache.Get yours at: https://upstash.com/
Example: https://us1-pretty-hamster-12345.upstash.io
string
Upstash Redis authentication token.

Market Data

string
Finnhub API key for real-time stock quotes and market data.Free tier: 60 requests/minute
Get yours at: https://finnhub.io/

Energy Data

string
U.S. Energy Information Administration API key for oil prices, production, and inventory.Get yours at: https://www.eia.gov/opendata/

Economic Data

string
Federal Reserve Economic Data (FRED) API key for macro indicators and economic metrics.Get yours at: https://fred.stlouisfed.org/docs/api/api_key.html

Aircraft Tracking

string
Wingbits API key for aircraft enrichment (owner, operator, type metadata).Get yours at: https://wingbits.com/
string
OpenSky Network OAuth2 client ID for higher rate limits from cloud IPs.Get yours at: https://opensky-network.org/
string
OpenSky Network OAuth2 client secret.

Conflict & Protest Data

string
Armed Conflict Location & Event Data (ACLED) API token for conflict and protest events.Free tier: Available for researchers
Get yours at: https://acleddata.com/

Internet Outages

string
Cloudflare Radar API token for internet outage detection.Requires: Free Cloudflare account with Radar access
Get yours at: https://dash.cloudflare.com/profile/api-tokens

Satellite Fire Detection

string
NASA Fire Information for Resource Management System (FIRMS) API key.Get yours at: https://firms.modaps.eosdis.nasa.gov/

Railway Relay Server

The relay server handles AIS vessel tracking, OpenSky aircraft data, RSS proxy, and Telegram OSINT polling.
string
AISStream API key for live vessel positions via WebSocket.Get yours at: https://aisstream.io/
string
Server-side relay URL (https://) used by Vercel edge functions.Example: https://relay.yourapp.com
string
Client-side relay URL (wss://) for local/dev fallback only.Example: wss://relay.yourapp.com
string
Shared secret between Vercel and Railway relay. Must be identical on both platforms.Generate with: openssl rand -hex 32
string
default:"x-relay-key"
Header name used to send the relay secret.
boolean
default:false
Emergency production override to allow unauthenticated relay traffic.
Leave unset/false in production.
number
default:60
Rolling window size (seconds) used by relay /metrics endpoint.

Telegram OSINT

Runs on Railway relay for MTProto stateful polling.
string
Telegram MTProto API ID.Get yours at: https://my.telegram.org/apps
string
Telegram MTProto API hash.
string
GramJS StringSession generated locally.Generate with: scripts/telegram/session-auth.mjs
string
default:"full"
Which curated channel list to ingest.Options: full, tech, finance

Threat Intelligence

string
URLhaus API key for malicious URL IOCs.Get yours at: https://auth.abuse.ch/
string
AlienVault Open Threat Exchange (OTX) API key for cyber threat enrichment.Get yours at: https://otx.alienvault.com/
string
AbuseIPDB API key for IP reputation enrichment.Get yours at: https://www.abuseipdb.com/

Trade Data

string
World Trade Organization API key for trade restrictions, tariff trends, and barriers.Get yours at: https://apiportal.wto.org/

Aviation Data

string
AviationStack API key for international airport delay data.Get yours at: https://aviationstack.com/signup/free
string
ICAO NOTAM API key for airport closure detection (Middle East focus).Get yours at: https://dataservices.icao.int/

Site Configuration

string
default:"full"
Dashboard variant.Options: full (worldmonitor.app), tech (tech.worldmonitor.app), finance, happy
string
API base URL for web redirect. When set, browser fetch calls to /api/* redirect to this URL.Leave empty for same-domain API (local installs)
Production: https://api.worldmonitor.app
string
default:"3d"
Map interaction mode.Options:
  • 3d — enables pitch/rotation interactions (default)
  • flat — keeps pitch/rotation disabled (2D interaction)
string
Client-side Sentry DSN for error reporting.Leave empty to disable error reporting.
string
PostHog product analytics key.Leave empty to disable analytics.
string
PostHog instance host URL.

Desktop Cloud Fallback

string
Comma-separated list of valid API keys for desktop cloud fallback.Generate with: openssl rand -hex 24 | sed 's/^/wm_/'

Registration Database

string
Convex deployment URL for email registration storage.Set up at: https://dashboard.convex.dev/

Public Data Sources

These services require no API keys and work out of the box:
  • UCDP (Uppsala Conflict Data Program) — conflict data
  • UNHCR (UN Refugee Agency) — refugee statistics (CC BY 4.0)
  • Open-Meteo — weather data (Copernicus ERA5)
  • WorldPop — population density
Rate Limits: Public APIs may have undocumented rate limits. The dashboard includes automatic circuit breakers and retry logic.