Inspiration

Offshore earthquakes are high-stakes events that can trigger hazardous waves, public panic, and shipping disruptions. Inspired by the NCSSM SMathHacks "Under the sea" theme, I wanted to create a tool that helps users prioritize which seismic events require an immediate investigation. My goal was to build a responsible, authoritative triage system that grounds coastal managers and the public in official terminology and data

What it does

The app transforms live "under the sea" signals into an explainable triage dashboard. It snatches live USGS earthquake feeds and ranks every offshore event on a 0–100 priority scale based on magnitude, depth, and recency. Users see a ranked queue and a color-coded map where markers scale and change color (Red/Amber/Green) based on their risk level. To ensure safety, the app provides natural-language explanations for every score and directs users straight to Tsunami.gov for official alerts

How we built it

We utilized a two-layer data strategy, fetching real-time summaries and historical catalog data via the USGS GeoJSON and FDSN Event Web Services. The backend uses Python and SQLite for stable local caching, while the frontend is an interactive Streamlit dashboard.

Challenges we ran into

Building a demo-safe application in just 48 hours required intense reliability engineering to handle potential API failures or network lag. I overcame this by designing a "replay mode" that allows the app to function offline using local samples, ensuring the project remains stable even without a network connection. Additionally, I addressed data leakage in my initial ML model by switching my target label to the independent USGS tsunami flag to ensure my metrics were realistic and not just mimicking my own scoring formula

Accomplishments that we're proud of

I successfully built a triage dashboard that transforms raw "under the sea" signals into actionable insights for emergency analysts and maritime operators

What we learned

I learned that when dealing with disaster data, responsible framing is just as important as technical accuracy. I discovered that my triage tool must not attempt to predict waves themselves; instead, it must act as a bridge to official NOAA and NWS messaging. I also learned how to leverage the Model Context Protocol (MCP) within VS Code to rapidly scaffold my environment and inspect my database with natural language

What's next for Offshore Quake & Tsunami Triage

The next phase of the project involves deeper oceanographic enrichment, such as integrating the Open-Meteo Marine API for live wave height context and OBIS data for biodiversity impac

Built With

Share this project:

Updates