Inspiration

Getting steps throughout your day can feel empty, with no real reason to use your phone and get your steps in. Footrace is designed to change all that by making your fitness journey competitive! Add friends through the app and get your walking done, and see if you can outpace your friends!

What it does

Footrace gets your steps each time you open or reload it, and uses those steps to put you on a leaderboard of your friends to see who can get the most steps every day. It syncs to your Android's health statistics to pull your steps, and compares how your friends did in the time frame you've set to rank who got the most.

How we built it

We decided to create a native Android application, using Android Studio with Kotlin and the Jetpack Compose API. We quickly discovered the Health Connect API which gave way to our project's concept of tracking steps on a leaderboard. To store our information we found Google Firebase, which allowed for rapid prototyping and iteration through their subservices such as Firestore and Authentication, allowing for the storage of information and authentication of users. We used the Material 3 library for its UI elements, using Canva's palette tool to create the M3 color scheme used for the project.

Challenges we ran into

Our biggest challenge was working with Android Studio and Firebase, which none of our team had ever worked with before. Working without using AI made this more difficult, as it meant researching solutions to our issues fell to our manual work rather than a quick fix that searched for us.

Accomplishments that we're proud of

We're happy we were able to produce a workable, useful app in the allotted time, as well as learn to code in Kotlin to make Footrace a strong tool.

What we learned

We learned a lot about how UIs are designed, how to leverage APIs to get information instead of reinventing the wheel, and how to design an application for a mobile device.

What's next for Footrace

We will consider a cross-platform alternative to be able to use the app on iPhones and other devices, as well as implementing background sync so the app does not need to be open to track steps.

Built With

Share this project:

Updates

Submission history