Inspiration
Given the theme of "discovery" we wanted to make an app with a focus on discovering new places to visit based on what the user finds interesting.
What it does
We used a Tinder-like system where a user can swipe left or right on photos of different destinations, or "journeys" to express their interest or disinterest for any given destination. Based on the users likes and dislikes, more or less destinations of a specific type (ie. similar location or attraction type) will be suggested to the user. A user can view the destinations that they have "liked" by visiting their profile tab and clicking/tapping on the photo of the destination which will open its location in Google maps. Users may also upload their own photos and tag them with data such as the location where the photo was taken using the Google Places API for other users to see.
How we built it
We built the front end using react native with Typescript, which allows for JourneyMatch to have both mobile and web views. The backend was built using Django for its support of SQLite which we intended to use to store user data and the set of user uploaded photos. Additionally, we also used the Google Places API to allow users to search and select specific locations to tag their photos with.
Challenges we ran into
Our two biggest challenges were implementing the Google places API and linking the backend of the app to the front end. For a lot of us, this was our first fullstack project and there were quite a few gaps in our knowledge leading to several features we had planned but ultimately never completed. These include features such as SQLite database integration to read and write data.
Accomplishments that we're proud of
We are really proud of how we managed to implement the Google places API after hours of trial and error. Additonally, we are really happy with how the card element on the home view UI turned out since it is the central part of our app.
What we learned
JourneyMatch taught us a lot about fullstack development and the diverse skillset required to deliver a product from start to finish. It also forced us to get comfortable with a handful of unfamiliar frameworks and languages (Typescript) which are commonly used in industry.
What's next for JourneyMatch
If we have the time, we may revisit JourneyMatch to finish implementing all the unfinished features.
Log in or sign up for Devpost to join the conversation.