Our team
Our team is team Hidden Gems, a talented team full of hidden gems yet to be discovered.
Anton (backend dev) - University of Toronto, Engineering Science (Machine Intelligence)
Jennifer (backend dev) - University of Waterloo, Biomedical Engineering (Artificial Intelligence Option)
Sean (frontend dev) - University of Waterloo, Computer Science
Tingyu - (product design) - University of Toronto, Rotman Commerce (Accounting Specialist)
Inspiration
A common dilemma that we found we often had was not knowing where to eat or what to do when we had some free time, especially when we wanted to explore new places locally or visit new places altogether. Hidden Gem allows you to obtain a schedule planning out how to spend your free time, curated towards your own interests.
What it does
Hidden Gem takes the start time, end time and location of the user, and asks if they wish to find a food place, or an activity. Based on that, the website suggests a list of potential places of interest. Users can heart or decline each option. For each option hearted, users are then asked how long they wish to spend at that location. This process repeats until the user has filled in their allocated time span with various food/activity places of their choosing. At the end, Hidden Gem will generate a final timeline outlining the agenda of where to go and how to allocate the assigned time to each location accordingly. It develops an agenda for the user, placed right at their fingertips for them to follow and enjoy the hidden gems around them.
How we built it
Backend Deployment
We built a Python backend with Flask, which is deployed with Google App Engine. An automatic google cloud build is triggered when there is a new push to the master branch in our backend github.
Integration with Google Maps API
We used Google Maps API to query place, destination, directions and visual map data in the backend. JSON files queried are parsed and cleaned, and can be easily requested by the front end.
Frontend
We developed a user interface with React. It makes requests to the backend to retrieve the necessary maps data, and displays it for users to explore.
Challenges we ran into
With the amount of features in Google Cloud Platform, we made several attempts before correctly setting up all the configs and connections. We also spent some time sorting through and understanding the extensive Google Maps API.
Accomplishments that we're proud of
Unlike previous hackathons, we managed time well and implemented what we wanted on time! Everyone got reasonable amount of sleep, while communication effectively and contributing equally. We're really proud of being able to bring such an interesting idea to life in such a short amount of time.
What we learned
Through trial and error, we found the right way to deploy a Flask backend on Google Cloud Platform. In future hackathons, we will be able to do so faster, allowing us to focus more on other aspects of the project. We also learned some of the ins and outs of the Google Maps API!
What's next for Hidden Gem
- Make the website responsive
- Let users modify location choices


Log in or sign up for Devpost to join the conversation.