Busy lives especially in cities means time is an invaluable resource. Deciding where to meet friends can be a very time-consuming task. Usually one friend in the group ends up having to work out where everyone should meet and what they should do. We need a solution using people's locations to work out the middle area for them to meet with suggested venues depending on what kind of activity the group want to do e.g. restaurants, bars, cafes, culture, and so on.

What it does

Forest App offers a solution which allows users to create a unique link for an event e.g. “post-work drinks” via which can be shared with friends. Each person clicks the link, allows location sharing and their location is added to a live map. The page can then be refreshed and once everyone’s locations are on the map, the best area for everyone to meet is identified. Depending on what activity type is selected e.g. restaurants, a map and list view of suggestions appears.

How we built it

We’re leveraging the real-time database, Firestore as our RDMBS storage, and Google Maps API. We have couple of events listeners and websocket in our javascript to be able to update Google Maps in real-time, and find the center points, and find the restaurants (or other venue types) around it.

Challenges we ran into

Real-time update when someone opens the link that we solved, and issues of removing the markers when we calculating the new center points in real-time especially when people just joined using the new link.

Accomplishments that we're proud of

We made something out of nothing! In two days! This is the first hackathon for all of us; we did front end, back end, prototyping, and created a MVP.

What we learned

How awesome it is to bring people together with different expertise and turn an idea into a real tangible solution.

What's next for Forest App

Next steps: integrate filter options or freetext so users can choose the type of activity they are interested in which shows a shortlist to anyone on the page. Additional features like voting to make choosing the venue easily can also be integrated.

Built With

Share this project: