Inspiration

230 000. That is the number of Canadians forced to evacuate their own homes due to wildfires in 2023! Wildfires are so detrimental yet so easy to prevent if we can catch them early. We created EmberGuard to not only spot these wildfires before they erupt, but also to create an application that allows anyone to contribute to this process.

What it does

EmberGuard gives communities and fire stations an early-warning view of wildfire risk. Users upload future potential forest fire photos, and the platform combines its own AI analysis with satellite-informed wildfire context to find hotspots sooner. Fire stations can view this through their own dashboard that prioritizes reports, shows risk trends by area, and helps teams respond faster with clearer, data-backed prevention decisions.

How we built it

We built EmberGuard as a React + TypeScript frontend with a Node.js/Express backend. Cloudinary powers our upload pipeline, storage, and fast image delivery, while Gemini handles deeper scene understanding and natural-language risk guidance. We combine that with TensorFlow.js signal scoring and weather context to produce a single, actionable risk result.

Challenges we ran into

One challenge we faced was getting the AI to distinguish between photos that were actually taken in a forest and random images taken indoors, like inside a house. For EmberGuard to work properly, images that clearly weren’t from a forest needed to be marked as invalid. To solve this, we integrated the Gemini API, which allowed the system to better understand the scene in the image and determine whether it showed a real outdoor environment. Without Gemini, our website would not have been able to reliably tell the difference, highlighting how important it was to the project.

Accomplishments that we're proud of

One accomplishment we are especially proud of is that EmberGuard is not just a reporting tool, but a platform that brings the community into the wildfire prevention process. It gives everyday people a way to contribute and have a voice, while also helping fire stations and emergency teams better understand high-risk areas and review past wildfire data. We are proud that our project supports both public involvement and smarter decision-making for fire stations.

What we learned

Through EmberGuard, we learned how important it is to use technical tools to solve real world problems. We saw how Cloudinary can make image handling much smoother and how Gemini can add real intelligence by understanding what is actually happening in an image. But more importantly we learned that building a useful product is not just about the coding features, but it is also about solving the right problem in a way that people can actually use.

What's next for EmberGuard

Next, we want to expand EmberGuard so it can collect information from remote areas that people may not regularly visit. Right now, community reporting is a big part of the platform, but there are many places where few people go, and fires could grow without being noticed. In the future, we would like to find ways to gather data from those areas as well, so EmberGuard can provide a wider and more complete view of wildfire risk.

Built With

  • cloudinary-api
  • google-gemini-api
  • node.js-+-express-(backend)
  • openweather
  • react-+-typescript-(frontend)
  • tensorflow.js
Share this project:

Updates