01. Overview
TCSS (Tropical Cyclone Severity System) is a full-stack meteorological platform designed to visualize the impact of hurricane-related hazards. It aggregates complex atmospheric data into a unified, interactive dashboard for real-time and historical analysis.
The system monitors live feeds from the NHC (National Hurricane Center) and NDFD (National Digital Forecast Database), providing users with instant insights into wind, surge, and rainfall severity levels using a customized categorization model.
02. Engineering & ETL Pipeline
The core of the project is a high-performance Python ETL pipeline that manages the lifecycle of high-resolution meteorological data.
- GRIB Processing: Developed a pipeline using Xarray and Cartopy to ingest NDFD GRIB2 files, performing stateful imputation to handle missing data frames and converting raw atmospheric variables into color-mapped PNG hazard layers.
- Geospatial Analysis: Engineered a custom parser for NHC shapefiles, extracting forecast track coordinates and the "Cone of Uncertainty" polygons for native storage in PostgreSQL.
- Real-time Polling: Implemented a persistent worker system that polls NOAA servers every 15 minutes, automatically updating the live dashboard without user intervention.
- Hurricane Archive Engineering: Curated and managed a comprehensive library of historical hurricane data, developing a specialized batch-processing engine to normalize and ingest legacy storm records for retrospective hazard analysis.
- Database Design: Utilized PostgreSQL with JSONB columns to store complex GeoJSON geometries, enabling fast retrieval and rendering of dynamic storm center coordinates and forecast Tau (time) steps.
03. Visualization & Interface
The frontend is a high-performance geospatial dashboard built with React and Leaflet, specifically architected to handle high-frequency temporal data.
- Temporal Playback Engine: Developed a custom "VCR-style" playback controller that allows users to traverse storm timelines, reconstructing historical hurricane evolution frame-by-frame with synchronized data overlays.
- Dynamic Layer Management: Implemented a modular toggle system and switches, allowing users to isolate specific hazards (wind, surge, rain) or toggle the "Cone of Uncertainty" to reduce visual clutter during analysis.
- State Synchronization: Engineered a robust state-management flow that maps backend database IDs to frontend temporal states, ensuring seamless transitions between live satellite feeds and archived historical events.
- Contextual Legend System: Designed an adaptive UI legend that explains meteorological visualizations (like the uncertainty cone) in real-time, grounding complex scientific data for non-expert users.