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
- python
- streamlit
- vscode
- wsl
Log in or sign up for Devpost to join the conversation.