Ghost Runner

Inspiration

The generational novelty of the pandemic has presented society with many opportunities for improvement. Given the uncertainty and health concerns that the past year has presented, our team wanted to create an application that would address two main problems that many people currently faced: being social and being active.

Description

Ghost Runner allows users to record their runs in the form of ghosts (i.e. playable recorded runs). The application records the distance that a user travels at different points in time and allows their runs to be replayed and challenged by other users in order to beat their times. Working out with or against friends can help create a feeling of community even if people can't physically be together. The app allows users to manage their profile, friends list, track their best ghost runs, challenge other runners with similar average speeds, and track their own location in real-time.

The user begins by opening the app to a log-in/sign-up screen. Once they are logged in, they can choose what kind of run they want to do: they can try to beat their own personal best by choosing "Race Your Ghost", they can race a friend's personal best by choosing "Race A Friendly Ghost", they can race a similarly athletic user's personal best by choosing "Race A Stranger Ghost", or they can go on a run without a ghost to race by choosing "Free Run". The user then chooses their desired running distance, and the race begins!


If a user wants to view their friends' profiles or if a user chooses to race a friend, they will be able to see an interface featuring their list of friends. The user can also view their own profile to see their personal bests by clicking the red Profile button on the map. Similarly, the user can click the red Ghost button on the map to view their competing ghost's statistics.


Development

We built the app on react-native and used Expo to help deploy and create an environment for developing and testing. First, we identified the users' needs and how our app would fulfill those needs. Then, we constructed the fundamental aspects of the application, including navigation page layout and map functionality. Once development was under way, we added data storage features, distance & speed calculations, and profiles to provide the user with a great experience when they are using our app. During this project, I was primarily responsible for the front-end UI, including all the navigation menus, profile, and friends list.


To learn more about Ghost Runner check out the walkthrough analysis video above. This project was done during a Western University hackathon. The DevPost and GitHub links can be found below.