Keep walking - your petβs life depends on it
Many people live sedentary lifestyles and lack the motivation to exercise. SparkPet is a mobile app that encourages users to exercise by gamifying movement. The app allows users to create a virtual pet that they must keep alive by walking - the petβs health is directly tied to the userβs walking habits. If the user fails to walk enough, their pet will lose health and eventually die.
The first time the user opens the app, they are prompted to grant SparkPet access to their physical activity. This is necessary to count the user's steps.
Home | Settings |
---|---|
![]() |
![]() |
This is the page that is displayed when a user first opens the app (assuming they have previously signed in). A circular progress bar in the center of the screen shows the user's steps for the current day. Once the user reaches their daily step goal, the "FILL BOWL" button will become enabled. Tapping this button will fill the pet's food bowl, which will increase the pet's health. If the user fails to reach their daily step goal, the pet's health will decrease. | A simple settings modal where the user can turn on/off dark mode and log out. |
Closet | Store |
---|---|
![]() |
![]() |
A list of the items a user has acquired. The user can equip items to their pet from this screen. Once an item is equipped, the pet will appear to be wearing the item. | The in-app store. Players can spend in-game currency here to buy new items for their pet. |
Leaderboard | Leaderboard Popup |
---|---|
![]() |
![]() |
The daily leaderboard for the past seven days. This will be updated every day at 00:00 GMT. | Upon tapping a leaderboard name, a popup window will appear that shows more information about the user and their pet. The user's pet will be wearing the items that they have equipped. |
Active Challenges | Historical Challenges |
---|---|
![]() |
![]() |
At any given time, there are a number of challenges that users can join by paying a small fee. Upon successful completion of a challenge, users receive a reward. | Previous challenges and their statistics. |
Requirements: Flutter
flutter run
from the root of the repository.β Phase I - Basic user interface layouts
β Phase II - Create data models
β Phase III - Implement Riverpod state management
β Phase IV - Update application architecture
β Phase V - Create and link Firebase backend
β Phase VI - Deploy and user testing
β¬ Phase VII - Improvements based on user feedback (in progress)
Created by Rob Godfrey