Replace TopoJSON map with static SVG#3
Merged
Merged
Conversation
The TopoJSON fetch + custom arc decoding produced a distorted map. Replaced with simple-world-map SVG (CC BY-SA 3.0, Al MacDonald / Fritz Lekschas) served as a static asset. No CDN dependency, no projection math, renders correctly.
6 tasks
AquiGorka
added a commit
that referenced
this pull request
May 5, 2026
## Summary - Both deploy jobs now read stellarNetwork and rpcUrl from gh secrets instead of hardcoded URLs: - testnet: STELLAR_NETWORK + RPC_URL - mainnet: MAINNET_STELLAR_NETWORK + MAINNET_RPC_URL - Removes the gateway.fm hardcoding from the mainnet job and the soroban-testnet hardcoding from the testnet job. - deno.json patch bump 0.2.5 -> 0.2.6. Repo gh secrets set in the same change: - STELLAR_NETWORK = testnet - RPC_URL = https://soroban-testnet.stellar.org - MAINNET_STELLAR_NETWORK = mainnet - MAINNET_RPC_URL = https://rpc-pro.lightsail.network/<TOKEN> (Quasar Pro) ## Note for PM thread Phase 0 finding #3 said network-dashboard derives Stellar config at runtime from council-platform and makes no direct RPC calls. Verified during D4: dashboard DOES make direct RPC calls — src/lib/stellar.ts:139 (new s.rpc.Server(RPC_URL)) is used by getChannelSupply and other contract reads. ClickUp 86c9n8cby (proxy refactor) scope should be extended to include network-dashboard. The Quasar token IS embedded in the dashboard's mainnet public/config.js as the accepted exposure for the silent release. Part of the silent mainnet flip (ClickUp 86c9c86b6). ## Test plan - [x] deno fmt clean - [x] deno lint clean - [x] deno task test — 28 passed - [ ] Tag-triggered mainnet deploy generates a public/config.js with stellarNetwork: "mainnet" and Quasar rpcUrl - [ ] Tag-triggered testnet deploy generates a public/config.js with stellarNetwork: "testnet" and soroban-testnet rpcUrl - [ ] UI smoke on https://dashboard.moonlightprotocol.io
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Replaces the TopoJSON CDN fetch + custom arc decoding with a static SVG world map served from
public/world-map.svg.Before: Fetched
land-110m.jsonfrom jsDelivr, decoded delta-encoded arcs, projected via custom equirectangular transform. Result was distorted.After: Uses simple-world-map (CC BY-SA 3.0). Pre-rendered country outlines with ISO 3166-1 IDs. Loaded from same origin, no CORS, renders correctly.
Changes
public/world-map.svg-- static SVG asset (56KB)src/lib/world-map.ts-- replacedfetchWorldPaths()withfetchWorldSvg(), updated projection to match SVG viewBoxsrc/views/map.ts-- parses SVG, extracts paths, renders with council markersTest plan
deno task buildpasses