Inspiration

We were inspired to build Flare to close the gap between local incidents and official emergency broadcasts. Our goal was to move beyond passive news to a more unified real-time network where neighbors can instantly alert and protect one another.

What it does

Flare is a real-time alert system that decentralizes emergency reporting. Users can instantly report local hazards, filter by hazard type and vote thresholds, and upvote existing alerts to provide crowdsourced verification. It also features an analytics dashboard to track total community members notified and number of alerts raised

How we built it

We built Flare using a full-stack architecture: Next.js and React for a responsive frontend, and FastAPI to handle our backend logic. We chose Supabase for database management, specifically using its real-time features to push instant alerts to users. We used Claude and GitHub Copilot to help structure our database schema and generate the initial project skeleton.

Challenges we ran into

Our biggest challenge was managing Supabase permissions to keep data secure while syncing our FastAPI backend with next.js for real-time alerts. We also had to work quickly to build separate, real-time features for both regular users and admins, which required complex state management in a very short timeframe.

Accomplishments that we're proud of

We are proud of launching a fully functional web app from scratch in a short time. This was our first time working with Supabase and FastAPI, so successfully building out the database architecture and backend endpoints was also a big accomplishment for us.

What we learned

This project turned our classroom theory into practice. We applied our knowledge of FastAPI endpoints and requests to a real-world app, gaining a deeper understanding of frontend-backend communication. We also learned to manage cloud databases with Supabase, specifically handling real-time data streams and securing user permissions in a live environment.

What's next for Flare

One of our teammates fine tuned a model to find key word matches between two strings, and we would love to implement this when trying to group together the same instances of accidents. We also plan to implement a map in the future to map out different hazards according to the type of hazard given a user's location.

Built With

Share this project:

Updates