Skip to content

feat: add commodity variant — mining, metals & energy intelligence#1093

Closed
koala73 wants to merge 1 commit intomainfrom
commodity-variant-clean
Closed

feat: add commodity variant — mining, metals & energy intelligence#1093
koala73 wants to merge 1 commit intomainfrom
commodity-variant-clean

Conversation

@koala73
Copy link
Owner

@koala73 koala73 commented Mar 6, 2026

Summary

Adds the commodity variant (VITE_VARIANT=commodity) for commodity.worldmonitor.app, focused on mining, metals, energy commodities, and critical minerals.

Based on work by @jyr-ai (#1040), cleaned up and isolated for merge.

What's included

  • 70+ mining sites, processing plants, and commodity ports with geographic data (commodity-geo.ts)
  • DeckGL map layers: mineral-colored scatterplots for mines, smelters/refineries, and export ports
  • XSS-safe tooltips using text() helper for all user-facing strings
  • Commodity-specific panels: Gold & Silver, Energy Markets, Mining Industry, Critical Minerals, Base Metals, Major Miners
  • 14 new RSS domains added to shared allowed-domains for commodity news feeds
  • Server-side feed definitions for commodity news sources (_feeds.ts)
  • Commodity market symbols and sector definitions
  • Variant config with desktop/mobile map layer defaults

Cleanup from original PR (#1040)

  • Removed ~100 lines of duplicate FEEDS definition (central feeds.ts is source of truth)
  • Removed invalid geopoliticalBoundaries property (not in MapLayers type)
  • Fixed broken mobile-map-integration-harness.ts imports
  • Removed external Substack credit link from app header
  • Isolated commodity DeckGL changes from unrelated basemap refactor — contributor had ripped out PMTiles/basemap provider system; this PR only adds the 3 new commodity layers on top of main's DeckGLMap

Files (24 changed)

Area Files
New data commodity-geo.ts, commodity-markets.ts, commodity-miners.ts
Map layers DeckGLMap.ts (+105 lines: 3 layers + tooltips + mineralColor())
Config panels.ts, feeds.ts, variant.ts, variant-meta.ts, variants/commodity.ts
Shared rss-allowed-domains.json, _rss-allowed-domains.js
Server news/v1/_feeds.ts
Types types/index.ts (4 new MapLayers properties)

Test plan

  • TypeScript typecheck passes (tsc --noEmit)
  • All 60 edge function tests pass
  • Version sync check passes
  • Verify VITE_VARIANT=commodity npm run dev renders map with mining layers
  • Verify commodity panels load with correct feeds
  • Verify non-commodity variants are unaffected (no regression)

…1040)

Add new VITE_VARIANT=commodity for commodity.worldmonitor.app:
- 70+ mining sites, processing plants, commodity ports (commodity-geo.ts)
- DeckGL map layers with mineral-colored scatterplots and XSS-safe tooltips
- Commodity-specific panels, feeds, and RSS domains
- Variant config with desktop/mobile map layer defaults
- Commodity market symbols and sector definitions

Based on work by @jyr-ai, cleaned up for merge:
- Removed duplicate FEEDS (central feeds.ts is source of truth)
- Removed invalid geopoliticalBoundaries property
- Fixed broken mobile-map-integration-harness imports
- Removed Substack credit link
- Isolated commodity DeckGL changes from unrelated basemap refactor
@vercel
Copy link

vercel bot commented Mar 6, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
worldmonitor Ready Ready Preview, Comment Mar 6, 2026 4:50am

Request Review

@chatgpt-codex-connector
Copy link

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@koala73
Copy link
Owner Author

koala73 commented Mar 6, 2026

Closing — will push fixes to contributor's branch instead for proper attribution.

@koala73 koala73 closed this Mar 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant