Inspiration

Local news reports have been flooded with heartbreaking images of sea lions, dolphins, and birds suffering from massive algae blooms along the California coast. Beyond wildlife, human health is increasingly at risk due to contaminated shellfish carrying domoic acid, causing conditions like Amnesic Shellfish Poisoning (ASP). Our team was inspired to act after participating in a beach cleanup where we environmental scientists explained the devastating environmental impact it was having. We knew we needed to help our community spot, track, and respond to algae blooms faster.

What it does

Bloom Watch empowers communities to take action by: Real-time tracking: An interactive map highlights bloom-affected areas using OpenStreetMap. Crowdsourced reporting: Locals can report abnormal animal behavior or changes in water conditions, creating a rapid response network. AI-powered education: Our platform (powered by Google Gemini) offers learning modules on algae blooms, domoic acid risks, and environmental safety. Community alerts: Users, especially those with asthma, children, pets, or who rely on local seafood, can stay informed and avoid high-risk areas.

How we built it

Firebase: Real-time data storage and secure user authentication. OpenStreetMap API: For customizable and accurate location tracking of blooms. React & Node.js: To build a fast, responsive, and intuitive web app. Google Gemini: AI-enhanced learning and data insight generation

Initially, we attempted a MongoDB setup but shifted to Firebase after connectivity challenges. We also spent significant time learning to implement OpenStreetMap APIs effectively into our project.

Challenges we ran into

One of the biggest challenges was parsing through and gathering specific elements from the dataset. We had to ensure that all the data we collected was consistent, with no null values or incorrect data types, which took a lot of careful validation and filtering. Additionally, setting up MongoDB initially caused issues with server connectivity, which led us to pivot to Firebase for a smoother, more reliable real-time database solution.

Accomplishments that we're proud of

Building a fully functional, real-time, community-powered tool in a short timeframe. Creating an educational component with AI that goes beyond simple reporting. Setting a foundation for meaningful community engagement around an urgent environmental crisis.

What we learned

Throughout building Bloom Watch, we learned that solving real-world environmental challenges requires more than just coding — it takes adaptability, creativity, and teamwork. Technical Flexibility: When our original plan to use MongoDB fell through due to server issues, we quickly pivoted to Firebase. This taught us how important it is to stay flexible and find new solutions under pressure. Geospatial Development: Integrating OpenStreetMap for real-time tracking required us to dive deep into new APIs and understand geospatial data visualization — an area none of us had much experience with before this hackathon. Team Collaboration: Dividing tasks efficiently between front-end, back-end, and AI development helped us stay productive and focused, especially when challenges popped up. User-Centered Design: Talking about algae blooms made us realize that community reporting and education aren't just "extras" — they’re essential. We learned to design features that are simple, accessible, and truly helpful for everyday users. The Power of Storytelling: Environmental issues like algae blooms can seem distant or technical. We learned that creating a compelling story — through maps, data, and real-life impact — makes it easier to engage and empower people to take action.

What's next for Bloom Watch

Real-time notifications: Instant alerts when blooms are detected near beaches or seafood markets. Geographical expansion: Scaling from LA to other U.S. hotspots like the Gulf of Mexico and Great Lakes — and eventually worldwide. Predictive analytics: Using AI to forecast future blooms by combining user reports, weather, and water quality data.

Share this project:

Updates