We based our idea for Vintage around existing social media networks as well as the Retro theme for this hackathon.
What it does
Vintage is a location-based, photo-only social media app. Students can sign on using their university emails and post meaningful pictures at their current locations. Other students can view nearby pins on the map, which represent posts that people have made at those locations. Then students can visit those locations to view the pictures posted at those specific locations from any time in the past. The app serves as a photo time capsule for future generations to see glimpses of the past at familiar locations.
How we built it
The app uses FireStore to store data about the user and each post. For authentication, we use FireBase authentication. We use Firebase Storage to store the actual images that people are posting. After getting permission for a users location, we calculate a geohash. Due to FireStore’s limited capability on multi-key querying, this solution allows us to query locations in an arbitrary radius using Vanilla FireStore. Because we are using expo to build the mobile application, we are using the built in Expo-Camera to take pictures. This camera stores images into the local filesystem that expo has, we then upload this path into Firebase Storage with a unique uid filename.
Challenges we ran into
The newest version of expo SDK, expo SDK 39, had a problem with iOS users being unable to fetch local URI's. We downgraded to expo SDK 38 to fix this problem. In order to store location values in firebase, we used geohashing to hash the longitude and latitude into one value.
Accomplishments that we're proud of
We're proud of being able to send photos to people who may come across our photos in the future. We worked with a lot of software that was new to us during this hackathon, so we're especially proud of our final product.
What we learned
We learned how to make a mobile application that connects users in real time with the help of FireBase and Expo.
What's next for Vintage
We plan to refine the UI and push the software to the app store. We will also add a messaging feature so that students may message people from the past who posted pictures to connect with them on a more personal level.