Skip to content

WellnessQuest v4.0 – Final Submission

Latest

Choose a tag to compare

@Pizzabagarn Pizzabagarn released this 08 Jun 12:50
· 11 commits to main since this release

Final submission for the course "System Development and Project" (VT25)

This release includes the final version of the WellnessQuest Android application.

WellnessQuests

WellnessQuests is an Android application that combines physical and mental health with game mechanics. Users complete quests, collect coins, and progress through an interactive level-based map. The application is developed in Android Studio using Java and follows the MVVM architecture pattern with DataBinding, LiveData, and Firebase integration.

This submission corresponds to tag v4.0, which includes quest verification via ML Kit, a dynamic level system, sound-effects, music, and improved project structure for evaluation.


Download the Project

  1. Visit the GitHub repository:
    https://github.com/Pizzabagarn/WellnessQuests

  2. Navigate to the Releases or Tags section.

  3. Locate the tag v4.0.

  4. Click Download ZIP to download the source code.

  5. Extract the ZIP file to a folder on your computer.


Requirements

  • Android Studio (recommended version: 2022.3 "Electric Eel" or later)
  • Java 17
  • Gradle (automatically handled by Android Studio)
  • A physical Android device or emulator
  • Internet connection (for downloading dependencies)

Firebase configuration:

For testing purposes, you need to place the google-services.json file into the Android project at:

If you are using the ZIP version provided via Canvas (final submission), the file is already included in the correct location.
If you downloaded the project from GitHub, this file is not included due to security reasons. Please contact the development team or set up your own Firebase project and add your own google-services.json.


How to Run the Application

  1. Open Android Studio.

  2. Select Open and navigate to the extracted WellnessQuest folder.

  3. Wait for Android Studio to sync the project and download required dependencies.

  4. Copy the google-services.json file into WellnessQuest/app/.

Note: For the final submission (ZIP version), the google-services.json file is already included in the correct directory (app/) and does not need to be added manually. This only applies if you are using the provided ZIP archive instead of cloning the project from Git.

  1. Open Device Manager in Android Studio (top-right corner), and create a virtual device:
  • Choose a device type (e.g., Pixel 5)
  • Select a system image (e.g., API 33)
  • Click Finish, then press Play to start the emulator
  1. Press the green Run 'app' button to build and launch the application.

Note: The first build may take a few minutes due to Gradle sync.


Features

  • Firebase Authentication: Register and log in with email and password

  • Cloud Firestore: Coins, level data, and quest status are saved in the cloud

  • DataBinding and LiveData: UI elements update in real-time as data changes

  • Quest system: Each quest contains:

  • Title, description, and category (e.g., "Mind", "Fitness")

  • Coin reward

  • A list of valid image tags for verification

  • ML Kit Integration:
    During quest verification, users upload or capture a photo. ML Kit analyzes the image locally and compares it to the expected tags. If matching, the quest is automatically marked as complete.

  • Interactive Level Map:
    Each level contains 8 quests. Users unlock levels using coins and can tap each level node to view information.

  • Offline support:
    Basic functionality such as quest display and UI navigation may work offline after login, but the app requires an internet connection to log in and to sync data with Firestore. Offline support is limited and not fully implemented in this version


Authors

  • Alexander Westman
  • Mena Nasir
  • Gen Félix Teramoto
  • Lowisa Svensson Christell

License

This project is for educational purposes and part of a university course (System Development and Project, Spring 2025).