Team Twenty Four EyespresentTravel Chum
Travel Chum Demo Video
Your personalised travel companion
Travel Chum is a personalised journey planner, designed for mobile, with a focus on breaking up journeys and finding things to do along the way. The idea came about from a discussion around planning road trips - other apps make it easy to plan a route from A to B, but finding stops and nearby attractions to visit along the route is difficult and time-consuming. We envisioned an app that provided a user-friendly way of planning journeys with regular stops, and the ability to find interesting things to see and do based on user preferences.
The app features a user-friendly UI, with scrollable tabs and a dark mode. Users can generate journeys in the 'Trip Planner' tab by inputting origin and destination locations, a number of stops and extra options including mode of transport and their interests and activities. There is also an option for accessibility, which tailors the generated nearby attractions towards accessible places. A user simply clicks 'Start your Journey' and the route is rendered on a map, along with evenly-spaced markers representing the stops.
From here, users can click on the markers to get nearby attractions or things to do that are tailored to their selected interests - the attractions render both on the map in the form of markers, and below the map in a list that displays more details, including an image, street address and Google-provided user rating.
Each attraction has an 'Add to Trip' button; Users can add as many as they would like to their journey. Preferences can also be changed on the fly, a user simply has to change the options and click on a 'stop' marker to re-generate the nearby attractions that are suited to their newly selected interests.
At this point, the user can name their journey and save it to their account for future reference. Past trips are viewable in the 'My Trips' tab, which displays a list of all trips with the trip name, origin and destination. Hit the 'View Trip' button to see the full journey including the selected attractions to visit along the way, or 'Delete Trip' to remove it from your account. Saved trips can also have more attractions added to them later on.
The Team
Dominic Heathcote
Jake Parker
Rob Allen
Dan Clark
Nathan Lee
Steve Robinson
Technologies
We used: Frontend: JavaScript, React Native, Expo. Backend: Firebase Cloud Firestore, Firebase Authentication
We used React Native for the frontend as it's a popular framework for mobile apps, can work cross-platform, and can be written in JavaScript, which we were all comfortable with due to its usage throughout the bootcamp. There are also many third-party libraries designed for React Native that we wanted to implement, e.g. react-native-maps for rendering Map components. We used Expo because it provided a straightforward way to develop and test our app on physical Android devices through the Expo Go App. Firebase was used as we wanted to challenge ourselves to try out a cloud-based NoSQL database in Cloud Firestore, as well as user Authentication through Firebase's Authentication tool. The NoSQL structure of Firestore allowed us to have flexibility in the data being stored, which was useful due to the dynamic nature of our trip data.
Challenges Faced
One of the biggest challenges we faced was the initial setup of the dev environment, including being able to develop and test the app on emulated or physical devices - we had to find a solution that would work for every member of the team, so that we were working on the project in sync. Another was that we struggled to implement all the features we wanted to within the limited timeframe (although we did reach our MVP!).