Tags: atawad/worldmonitor
Tags
v2.3.8 — Finance Variant, Feed Resilience & UX Polish - Finance/trading variant with market-focused dashboard, GCC investments panel - Auto-detect OS in download banner — show only relevant platform buttons - BBC Persian, Iran International, Fars News, MIIT & MOFCOM feeds - UTC clock moved from map overlay to centered header bar - Gulf FDI investment database and panel component - Timeline filtering wired across map and news panels - Dynamic FEEDS category enumeration in loadNews() - Map: prevent popups from overflowing below viewport edge - Map: disable repetition & use English-only vector labels - Map: rehydrate country layers after setStyle theme switch - Map: persist country highlight across theme switches - Download banner: detect Intel Macs, show both Mac options (not Windows) for unknown arch - Download banner: hide desktop prompt on mobile devices - RSS: guard invalid dates (NaN pubDate) to prevent toISOString crash - RSS: replace 20 dead/blocked feed URLs with Google News fallbacks - CORS: add finance.worldmonitor.app to Railway proxy allowlist - Finance: enable GCC investments layer and stabilize GCC feeds - Finance: keep data panels and add desktop finance map layers - Finance: address PR review blocking issues - Trending: suppress month names and strip source attributions from titles - Trending: suppress noisy finance/generic terms from keyword spikes - Deploy: prevent stale chunk 404s after Vercel redeployment - Panels: standardize error messages with specific causes - Desktop: batch keychain reads to reduce macOS password prompts - AI: switch OpenRouter model to auto-routed free tier - Add coverage for finance/trending/reload and stabilize map harness - Add finance variant to GitHub issue templates - Finalize 2.3.8 changelog and version - Harden full and tech variants against feed/API pressure
v2.3.6 — Hide node.exe console window on Windows - **Windows**: The Node.js sidecar process was spawning with a visible console window (`C:\Program Files\nodejs\node.exe`) overlaying the app. Added `CREATE_NO_WINDOW` (0x08000000) creation flag to suppress it. - Uses `std::os::windows::process::CommandExt::creation_flags()` behind `#[cfg(windows)]` guard — no effect on macOS/Linux builds - Sidecar stdout/stderr were already redirected to log files, so no console output is lost **Full Changelog**: https://github.com/eliehabib/worldmonitor/compare/v2.3.5...v2.3.6
v2.3.5 — Differentiated Panel Error Messages & Auto-Hide Desktop Config
- **Differentiated error messages**: Desktop panels now show amber "API key not configured"
messages (with Settings link) instead of generic red "Failed to load" when API keys are
missing. Upstream API failures (rate limits, geo-blocking) show "Upstream API unavailable
— will retry automatically" instead.
- **Auto-hide Desktop Configuration panel**: When all features are configured and all
secrets are present, the panel hides itself automatically, reducing UI clutter.
- **Markets, Heatmap, Commodities**: Amber config error when FINNHUB_API_KEY missing
- **Satellite Fires**: Amber config error when NASA_FIRMS_API_KEY missing
- **BTC ETF Tracker, Stablecoins, Market Radar**: "Upstream unavailable" on Yahoo/CoinGecko failures
- **Desktop Configuration**: Auto-hides when fully configured
- New `Panel.showConfigError()` base method with amber CSS styling
- `fetchMultipleStocks()` and `fetchAllFires()` now return `{ data, skipped?, reason? }`
- Self-contained panels check `unavailable` flag from API responses
- Zero TypeScript errors, clean production build
**Full Changelog**: https://github.com/eliehabib/worldmonitor/compare/v2.3.4...v2.3.5
PreviousNext