69 Commits
Author SHA1 Message Date
Hanzo Dev fcf1fb16fa chore(notice): pin upstream provenance and deviations; sweep product branding 2026-07-13 16:12:09 -07:00
z bd5d2d2677 docs(brand): add hero banner 2026-06-28 20:10:35 -07:00
Antje Worring 1201e34aa8 docs(readme): drop the fork/license blurb — attribution lives in NOTICE + LICENSE 2026-06-21 00:57:59 -07:00
Antje Worring 631d5d7197 license: MIT throughout (drop AGPL mentions + BSD-3 split)
Original worldmonitor v2.4.0 was MIT; keep the project MIT and credit Elie Habib
in NOTICE. Removes the AGPL provenance references and the BSD-3-Clause split on
Hanzo modifications — single MIT license, with NOTICE attribution.
2026-06-21 00:56:54 -07:00
Hanzo AI 97760c24e1 license: drop separate LICENSE.MIT; MIT notice preserved in NOTICE (BSD-3 primary) 2026-06-17 21:01:27 +00:00
Hanzo AI c40ec87c9e fork: re-base on worldmonitor v2.4.0 (last MIT); Hanzo additions BSD-3-Clause, Elie Habib MIT preserved + attributed 2026-06-17 20:58:16 +00:00
Lib-LOCALE 6f211a7baf feat(i18n): comprehensive localization, RTL support, and regional feeds revamp 2026-02-18 10:38:17 +01:00
Elie Habib b5c35c1029 docs: add finance variant, Gulf FDI, tri-variant architecture to README 2026-02-17 16:52:33 +04:00
Sebastien Melki 942213bebe docs: fix stale documentation across project
- CHANGELOG: add missing v2.3.5 and v2.3.6 entries
- README: update API edge function count (45+ → 60+), port count
  (84 → 83), desktop secret key count (15 → 17)
- DOCUMENTATION: fix version badge (2.1.4 → 2.3.6), CII monitored
  countries (20 → 22, add Brazil/UAE), add CNBC to live streams,
  fix vessel database count (50+ → 25+), fix port count (61 → 83),
  update news source count (80+ → 100+)
- DESKTOP_CONFIGURATION: update secret keys list from 13 to 17,
  add FINNHUB, URLHAUS, OTX, ABUSEIPDB, NASA_FIRMS keys
- Remove obsolete ROADMAP.md (all 5 proposed features are already
  implemented: geographic convergence, CII, temporal anomaly
  detection, trade route risk, infrastructure cascade)
2026-02-16 09:30:49 +02:00
sethandGitHub a4c74cb108 chore: lint markdown
MD012 / no-multiple-blanks Multiple consecutive blank lines
MD022 / blanks-around-headings Headings should be surrounded by blank lines
MD032 / blanks-around-lists Lists should be surrounded by blank lines
2026-02-15 11:38:22 -08:00
Elie Habib b1e45ef1f2 fix: filter trending noise, fix sidecar auth & restore tech panels — v2.2.6
- Expand SUPPRESSED_TRENDING_TERMS from 13 to ~170 entries to filter
  common English words (department, state, news, etc.) from intelligence
  findings
- Move sidecar admin endpoints (debug-toggle, traffic-log, env-update,
  local-status) before LOCAL_API_TOKEN auth gate — settings window sends
  bare fetch without token, causing silent 401 failures
- Restore Market Radar and Economic Indicators panels to tech variant
- Remove stale Documentation section from README
- Clean up .env.example cyber threat keys (handled internally)
- Bump v2.2.6
2026-02-15 20:00:17 +04:00
Elie Habib 3387b1913b docs: add developer X/Twitter link to Support section 2026-02-15 19:29:02 +04:00
Elie Habib 08162c88e7 chore: move test harnesses from root to tests/ 2026-02-15 19:22:40 +04:00
Elie Habib 6b6b25355f docs: document cyber threats, trending keywords, oil analytics, population exposure, and entity index
Update README with 5 new How It Works sections and 10 inline updates
reflecting implemented features. Data layer count 29→30+, data sources
14→22, new Tech Stack and Roadmap entries.
2026-02-15 18:29:25 +04:00
Elie Habib f4a33be590 feat: add cyber threat map layer with Feodo Tracker + URLhaus integration
Plot live botnet C2 servers, malware distribution nodes, and malicious IPs
on the globe using free abuse.ch APIs (Feodo Tracker + URLhaus).

- Vercel edge API with triple-layer caching (Redis → memory → stale fallback)
- IP geolocation via ipwho.is + ipapi.co (HTTPS-compatible with Edge runtime)
- Severity-based color coding (critical=red, high=orange, medium=amber, low=yellow)
- Feature-gated behind VITE_ENABLE_CYBER_LAYER=true env var
- Frontend circuit breaker, data sanitization, 10min auto-refresh
- Tauri desktop support: 3 new secret keys (URLHAUS, OTX, AbuseIPDB)
- Full test suite (6 unit tests), e2e harness updates, popup + tooltip rendering
2026-02-15 16:52:24 +04:00
Elie Habib 9673eaba61 docs: add download badges and web app links to README
Shield.io badges for Windows, macOS ARM, and macOS Intel desktop downloads
pointing to the new /api/download redirect. Web app links restyled as badges.
2026-02-15 10:42:38 +04:00
Elie Habib e4f98a13e2 Consolidate variant naming and fix PWA tile caching
- Rename variant default from 'world' to 'full' across config files
- Replace all startups.worldmonitor.app references with tech.worldmonitor.app
- Add CARTO basemap tile caching to Workbox runtime config (basemaps.cartocdn.com)
2026-02-15 00:15:33 +04:00
Elie Habib 5879426614 Add latest release badge to README 2026-02-14 21:39:37 +04:00
Elie Habib 1c537d1c77 Add reproducible cross-OS Tauri packaging workflow 2026-02-13 10:27:39 +04:00
Elie Habib e17840d09e Address packaging review feedback for signing hooks and docs clarity 2026-02-13 10:18:45 +04:00
Elie Habib 04ba652997 Add reproducible desktop packaging commands and release checklist 2026-02-13 10:11:16 +04:00
Elie Habib 25b590119b test: guard cluster cache initialization and document checks 2026-02-13 07:59:00 +04:00
Elie Habib 8ba6281076 docs: add self-hosting section to README
Explains that `vercel dev` is needed instead of `npm run dev` for
the API edge functions to work. Covers three deployment options
(Vercel, local with CLI, static frontend only) and platform notes
for Raspberry Pi/ARM users. Addresses #44.
2026-02-13 07:23:08 +04:00
Elie Habib fb0e53a21e Fix tooltip coverage, pulse scheduling, and map interaction defaults 2026-02-12 08:50:49 +04:00
Elie Habib 195acd0782 Fix DeckGL map regressions and preserve perf optimizations 2026-02-12 08:18:01 +04:00
Sebastien MelkiandGitHub 6c9401da7d docs: add stargazers growth to the bottom of the README file (#40) 2026-02-11 21:21:06 +04:00
Elie Habib 28302432de Expand README with market intelligence, architecture, and security docs
- Add Market & Crypto Intelligence data layer section
- Document macro signal analysis (7-signal BUY/CASH verdict, VWAP, Mayer Multiple)
- Document stablecoin peg monitoring and BTC ETF flow estimation algorithms
- Add strategic theater posture assessment (9 theaters)
- Add infrastructure cascade BFS modeling with chokepoint dependencies
- Add browser-side ML pipeline section (Transformers.js capabilities)
- Add dual-deployment architecture diagram (Vercel + Railway)
- Add caching architecture section (3-tier with stale-on-error)
- Add security model section (8-layer defense table)
- Update edge function count (30+ → 45+), tech stack, env vars
- Add Cmd+K search, virtual scrolling, UCDP/HAPI to capabilities
2026-02-11 19:07:39 +04:00
Elie Habib 82b95f9b43 feat: satellite fires layer, temporal baseline, cleanup dead code, update README
- Add NASA FIRMS satellite fire detection map layer and panel
- Add temporal baseline anomaly detection (Welford's algorithm, Redis-backed)
- Wire signal aggregator with fires, temporal anomalies
- Remove 10 dead service files and unused markdown docs
- Deduplicate RSS feeds, clean up story templates
- Fix data freshness, status panel, and verification checklist
- Create og-image.png for social sharing meta tags
- Update README with signal aggregation, source tiering, edge architecture
- Bump version to 2.1.4
2026-01-30 06:07:40 +00:00
Elie Habib 368709ad66 Add AI threat classification, map progressive disclosure, and bug fixes
- Hybrid keyword + Groq LLM classification with Redis cache (24h TTL)
- Progressive disclosure: bases/nuclear/datacenters hidden at low zoom
- Label deconfliction: BREAKING badges suppress overlaps by priority
- Zoom-adaptive opacity and marker sizing for reduced visual clutter
- Fix unbounded summary growth in alert merging (cap at 3 items)
- Fix Strategic Risk Panel showing "Insufficient Data" on startup
- Remove dead renderLimitedData code
- Expand README with algorithms, architecture, and new features
- Bump version to 2.1.2
2026-01-29 19:29:40 +04:00
Elie Habib ac3fb83a1d Streamline README for directory submissions
- Condense README from 3,896 lines to ~230 lines
- Move full documentation to docs/DOCUMENTATION.md
- Add social badges (stars, forks, license, last commit)
- Add 'Why World Monitor?' value proposition table
- Add Quick Start one-liner
- Use collapsible sections for data layers
- Add 'Support the Project' call to action
- Link to full docs throughout
2026-01-26 22:40:32 +04:00
Elie Habib 9aed470dec Modernize panel UI and expand README documentation
UI Improvements:
- CII Panel: Replace dated bar chart emoji with modern radar scan animation
- Strategic Posture: Compact chip-based layout with air+naval on same row
- Add rotating scan ring, pulsing dot, and source chip indicators
- Inline stat display for expanded theaters (AIR/SEA domain rows)

README Documentation:
- Add Strategic Posture Analysis section with 9 theater definitions
- Document strike capability assessment thresholds
- Add naval vessel integration and classification details
- Document server-side risk score API with Redis caching
- Add CII contextual boost documentation (hotspot, news, focal)
- Update completed features list
- Add project structure entries for new components
2026-01-26 17:34:47 +04:00
Elie Habib cdfa54ade3 Restructure README: geopolitical variant before tech variant 2026-01-25 22:42:53 +04:00
Elie Habib 968c44b94c Update branding: World Monitor v2 with AI focus
- README: Title to "World Monitor v2", AI-powered description
- index.html: Title "Global Situation with AI Insights"
- All meta tags updated (og, twitter, JSON-LD)
- Added AI keywords and features
- Updated site.webmanifest with AI branding
2026-01-25 22:38:15 +04:00
Elie Habib dc96c18162 Update README screenshot to new-world-monitor.png 2026-01-25 22:35:43 +04:00
Elie Habib 835b9a96ed Fix Military Surge Detection documentation to match actual implementation
The original documentation incorrectly described surge detection as
operator-count based. The actual algorithm uses:
- Baseline-based detection (2x historical activity = surge)
- Separate foreign presence detection for operators outside home regions
- Theater-based grouping with 48-hour baseline window
2026-01-25 22:27:05 +04:00
Elie Habib aa5d08dd2f Expand README with comprehensive documentation for intelligence features
- Add AI Insights Panel section: summarization fallback chain, headline scoring, sentiment analysis
- Add Focal Point Detector section: intelligence synthesis, scoring algorithm, urgency classification
- Add Natural Disaster Tracking section: GDACS integration, EONET merge, deduplication
- Add Military Surge Detection section: surge criteria, severity levels, news correlation
- Add Service Status Monitoring section: external service health tracking
- Add Signal Aggregator section: central signal collection, country grouping, convergence
- Add Browser-Based ML section: ONNX Runtime, fallback strategy, lazy loading
- Update Tech Stack: add deck.gl + MapLibre GL for WebGL map rendering
- Update project structure: add new services (focal-point-detector, signal-aggregator, etc.)
- Update components: add DeckGLMap, MapContainer, InsightsPanel, ServiceStatusPanel
- Update Roadmap: add recently completed features
- Add Entity Registry Architecture section: lookup indexes, entity types
2026-01-25 22:08:40 +04:00
Elie Habib ca90d52111 Add acknowledgment for fai9al's Tech Monitor inspiration 2026-01-23 12:09:28 +04:00
Elie Habib b874339c8a Add System Architecture section to README
- Add data flow diagram showing pipeline from sources to rendering
- Document update cycles for different data types
- Add error handling strategy (circuit breakers, graceful degradation)
- Document build-time optimization (code splitting, variant builds)
- Add security considerations section (client-side, API, privacy)
2026-01-23 11:35:45 +04:00
Elie Habib fdcc50304f Update README with Tech Monitor docs, bump version to 1.7.0
- Add Platform Variants section documenting World/Tech Monitor
- Add Tech Monitor data layers (Tech HQs, Startup Hubs, Cloud Regions, etc.)
- Add Regional Tech HQ coverage table (Silicon Valley, MENA, Europe, Asia)
- Add Marker Clustering section explaining grouping logic
- Add completed features to Roadmap (Tech Monitor, clustering, Learning Mode)
- Update version badge from 1.5.1 to 1.7.0
- Replace Earthquake with Datacenter in tech variant map legend
2026-01-23 11:34:04 +04:00
Elie Habib 383b8eadd3 Add tech variant with expanded global tech ecosystem data
- Add variant system (full/tech) with VITE_VARIANT env var
- Create tech-geo.ts with 465 entries:
  - 295 TECH_HQS (FAANG, unicorns across US, Europe, MENA, India, SEA, China, LATAM, Africa)
  - 112 ACCELERATORS (YC, Techstars, 500 Global, regional accelerators)
  - 38 STARTUP_HUBS (mega/major/emerging tiers)
  - 20 CLOUD_REGIONS (AWS, GCP, Azure, Cloudflare)
- Add map layers: startupHubs, cloudRegions, accelerators, techHQs
- Add tech-specific RSS feeds and panels
- Fix YouTube channel fallback IDs (Yahoo Finance, NASA TV, TBPN)
- MENA expansion: 50+ companies (UAE, Saudi, Egypt, Jordan)
- India: 40+ unicorns (Flipkart, PhonePe, Razorpay, etc)
- SEA: 25+ companies (Grab, GoTo, J&T Express, etc)
- LATAM: 35+ companies (Nubank, MercadoLibre, Bitso, etc)
2026-01-22 23:18:32 +04:00
Elie Habib ba02658c4c Update README with recent features and expanded documentation
- Update version badge to 1.5.0
- Document CII Learning Mode (15-minute warmup with visual indicators)
- Add Entity Extraction System section (company/country/leader detection)
- Add Signal Context section ("Why It Matters" explanations)
- Expand Data Freshness with core vs optional sources
- Document Live News Stream optimizations (YouTube Player API, idle detection)
2026-01-20 12:02:49 +04:00
Elie Habib 18b3d2b7dd Update README with recent features and documentation
- Update version badge to 1.4.2
- Document Intelligence Findings badge with click-to-detail behavior
- Add CII scoring bias prevention section (log scaling, conflict floors)
- Document alert warmup period preventing startup false positives
- Add protest map filtering (riots/high severity only)
- Document build-time version sync via Vite define
- Add map marker design section (label-free interaction patterns)
- Update Roadmap completed section with 5 new features
2026-01-18 13:56:04 +04:00
Elie Habib c71f65e73e Update README: reflect actual regional feed sources (Google News aggregation) 2026-01-18 10:21:15 +04:00
Elie Habib 25055da4f8 Update README with comprehensive feature documentation and fix regional feeds
README updates:
- Document spaceports layer and critical minerals deposits
- Add regional intelligence panels section (Africa, LatAm, Asia-Pacific, Energy)
- Document undersea cable activity monitoring feature
- Expand news clustering section with inverted index optimization details
- Add data freshness tracking documentation
- Expand entity coverage to 100+ with sector breakdown
- Document mobile experience optimizations

Feed fixes:
- Replace blocked regional RSS feeds (403 errors) with Google News RSS searches
- Add reliable fallback feeds (BBC regional, News24, SCMP, Guardian)
- Fix Africa, Latin America, Asia-Pacific, and Energy panels news availability
2026-01-18 10:19:26 +04:00
Elie Habib 53e51effdc Add entity-aware market correlation and signal deduplication
- Entity knowledge base with 45+ entities (companies, commodities, crypto, countries, people)
- Entity index for O(1) lookups by alias, keyword, sector, type
- News-to-entity matching for intelligent market-news correlation
- New signal type: explained_market_move (when news correlates with price action)
- Improved silent_divergence (only fires after exhaustive entity search)
- Per-signal-type TTL deduplication (6hr for market signals vs 30min default)
- README documentation for all new features and algorithms
2026-01-17 22:20:19 +04:00
Elie Habib 91a9378f50 Fix EIA API routing with Vercel catch-all route 2026-01-16 15:41:48 +04:00
Elie Habib aa060bc4ac Add data freshness tracking for Oil/Spending + update README
- Add 'oil' and 'spending' as separate DataSourceIds in data-freshness
- Update oil-analytics.ts to report to 'oil' source
- Update usa-spending.ts to report to 'spending' source
- Add EIA and USASpending to StatusPanel API list
- Update README: version 1.3.8, new API dependencies, project structure
- Document EIA_API_KEY in optional API keys section
2026-01-16 13:15:43 +04:00
Elie Habib f74079b4d7 Add Railway relay architecture and fix OpenSky OAuth2 documentation
- Document Railway relay infrastructure (AIS, OpenSky, RSS proxy)
- Correct OpenSky auth from Basic Auth to OAuth2 client credentials
- Add environment variables documentation for Railway deployment
2026-01-15 09:00:06 +04:00
Elie Habib d1dbd91e79 Expand README with undocumented features and system architecture
- Add Panel Management section (drag-to-reorder, visibility, persistence)
- Add Mobile Experience section (detection, reduced layers, touch gestures)
- Add Energy Flow Detection section (pipeline keywords, flow drop signals)
- Add Cross-Module Integration section (data flow architecture, dependencies)
- Add Refresh Intervals section (polling schedule, WebSocket streams)
2026-01-15 08:59:30 +04:00
Elie Habib 64a2aa9301 Add Wingbits to status panel and update README documentation
- Add Wingbits as tracked data source in data-freshness.ts
- Report Wingbits enrichment status to data freshness tracker
- Add Aircraft Enrichment section to README with classification algorithm
- Add Wingbits to API Dependencies and Optional API Keys
- Add wingbits.ts and wingbits.js to project structure
- Add acknowledgment for Yanal at Wingbits for API access
- Update version badge to 1.3.4
2026-01-15 08:58:15 +04:00