Inspiration
Winter time, especially in Canada, can be a challenging time. The roads get blocked by snow and the sidewalks can stay icy for days. So whether you have a car or you're just a pedestrian, it can be difficult to travel without knowing the road conditions. We decided to create Winter Watch to allow people to share their observations from the roads and pathways. This keeps people well-informed and helps them to decide the best possible route to their destination by trying to avoid harsh weather conditions.
What it does
Winter Watch allows people to share their experiences from the local roads to help others stay up to date, avoid possible injuries, and decide the best way to approach their desired location.
How we built it
We used Node.js, MongoDB Atlas, Express.js, HTML/CSS, and JavaScript to deploy a web application that uses Google Map's API to allow users to add their custom markers to the map which contain tags about the road conditions. The marker locations that were added are stored in a MongoDB database that continuously updates the map using Atlas' cloud features. Finally, we hosted the web server using a GoDaddy domain deployed by Github pages.
Challenges we ran into
Working with Google Maps's API and connecting it to the MongoDB database was a big challenge. We ran into a lot of trouble in order to get the API to post the latitude and longitude to the database.
Accomplishments that we're proud of
We are proud of learning and using Google Maps's API, MongoDB Atlas, and customizing it as a first experience and building it in a short amount of time.
What we learned
We've learned time management, better communication, and teamwork among learning technical abilities such as working with new APIs, databases, and serverless cloud features.
What's next for Winter Watch
We aim to make our map more user-friendly for both pedestrians and car owners. We think that this app could be useful for local government winter services to help clear the roads in a faster, more efficient way and update people in real time. Also, we want to add a timestamp feature where each marker has an expiration date of 2 hours and if it's not updated by then it will be removed to help with the authenticity of the information.
Log in or sign up for Devpost to join the conversation.