Monitor · Data Visualization · Real-Time API · 2026 · Solo build

Quake Pulse

A real-time seismic monitor: live USGS GeoJSON feed projected onto a rotating 3D globe with magnitude/depth classification, event sidebar, and zero server round-trips.

The problem

Seismic monitoring typically requires specialised desktop software or USGS web portals that are functional but dense. Quake Pulse translates the live USGS GeoJSON feed into a minimal Monitor surface: a rotating orthographic SVG globe with magnitude-coded dot markers, depth classification (shallow / intermediate / deep), an event sidebar showing place, time-ago, and depth band, and magnitude/time-window filter controls. All computation happens in the browser. 32 TDD tests covering magnitude classification, depth classification, GeoJSON parsing, filtering, sorting, URL construction, colour/radius mappings, and time formatting were written RED-first before any implementation existed.

Architecture

Key decisions

01

Hand-rolled spherical projection over D3-geo

D3-geo provides fully featured GIS projections but adds weight and couples the animation loop to its internal state. The spherical-to-Cartesian-to-screen transform is 15 lines of geometry: convert lat/lon to a unit vector, apply a Y-axis rotation matrix, project (x,y,z) to (sx,sy), and visibility-cull by z. This is easy to unit-test and trivially adjustable.

02

Monitor surface: globe rotation plus event list over a dashboard grid

The Monitor archetype fits seismic data: events are continuous and global, and the goal is situational awareness rather than analysis. A rotating globe gives immediate spatial context visible at a glance. The sidebar keeps the 20 most recent events accessible without breaking the spatial primary.

03

USGS public GeoJSON over paid seismic APIs

USGS provides real-time M2.5+ GeoJSON feeds at no cost with no API key. The feed URL is parameterised by time window and magnitude threshold, enabling browser-local construction with no backend.

Metrics

32 / 32
TDD unit tests written RED-first, all pass
zero
server round-trips or file uploads
10 / 10
UX differentiation axes from prior Foundry builds