Inspiration
It snowed. A lot.
Our streets turned into chaos, traffic slowed to a crawl, and snowplows somehow still missed half the roads. We started wondering: why are snowplow routes still basically guesswork? That curiosity turned into Snowy Day — a fun experiment to see how much better snowplowing could be with a little AI help.
What it does
Snowy Day lets you pick a city and watch snowplows clean it up the smart way.
Each snowplow acts like its own little brain, figuring out where to go next so that every road gets cleared with as little overlap and wasted time as possible. You can watch the plows move in real time as they tackle streets, highways, and intersections together.
How we built it
We built Snowy Day as a full-stack web app:
React.js for the frontend and map visuals
Python on the backend
A custom reinforcement learning model to plan snowplow routes
City roads turned into graphs using map APIs
WebSockets to stream live snowplow movement to the browser
In short: maps + AI + real-time visuals = satisfying snow-clearing chaos.
Challenges we ran into
Maps are way messier than they look
Teaching AI not to plow the same road twice
Making city-sized simulations run fast enough
Syncing real-time data without things exploding
Debugging AI that looked smart but definitely wasn’t
Accomplishments that we're proud of
Building our own reinforcement learning model from scratch
Watching snowplows move live on a real city map
Getting a full system working end-to-end at a hackathon
Turning a very Canadian problem into a working demo
What we learned
AI is only as smart as the rules you give it
Real-world data loves to break things
Real-time systems are hard, but very cool
Good visuals make complex ideas way easier to understand
Snow is a surprisingly great motivator
What's next for Snowy Day
Live weather and snowfall data
Smarter replanning when roads get blocked
Prioritizing emergency and high-traffic routes
Scaling up to bigger cities and more plows
Maybe even helping real cities someday 👀
Log in or sign up for Devpost to join the conversation.