When visiting historical locations, wouldn't it be amazing to see the pictures taken by those who've already visited?
What it does
Our web app allows you to take photos and associate those photos to a location. Later, when someone else visits the location, the can view the photos "dropped" at the location along with a description which provides insight into maximizing your experience. You are able to like to photo and photos are displayed on a most liked basis. Similar to Pokemon Go's Pokestops, you are able to take a photo to share your moments.
For example, when just Trudeau visited Waterloo for Hack the North 2017, you would be able to take a picture, upload it to the app with a description to remind future visitors of the day the prime minister gave a speech at Hagey Hall.
How we built it
Firebase was perfect for our project as it satisfied the three major requirements we had, which was a database, authentication and storage. Firebase made it incredibly easy to handle our backend and allowed us to store the uploaded photos and retrieve them for viewing very quickly. Our backend solely consisted of Firebase while our frontend was done with AngularJS. We decided to go with a web app instead of an Android/iOS app so we could demo the project without having to install anything. The app is optimized for mobile devices.
Challenges I ran into
No one in our group excelled in creating web apps optimized for mobile devices so we ran into some interesting issues regarding CSS and trying to make a full app experience solely through web. Additionally, implementing gestures for the web app was also tricky.
Accomplishments that I'm proud of
We're really proud of overcoming our UI difficulties. We were able to implement the core functionality while designing a user friendly UI.
What I learned
Firebase is perfect for Hackathons, without Firebase, we would have spent most of our time on backend, including authentication and general quests. Thanks to Firebase, we were able to set the backend up in less than an hour which allowed us to focus on creating a pleasant user experience through the frontend.
What's next for SnapCache
Something we're looking to implement is the ability to add comments to existing photos. Being able to chat on photos would be a cool feature and would allow for a more enjoyable, insightful user experience.