A self-guided tour companion app for Northeastern University’s Boston campus.
Xplore NU is an Android application that enhances self-paced campus exploration with interactive tours
tour_compressed_trimmed.mp4
Xplore NU is a self-guided tour companion app that allows users to:
- Navigate through Northeastern’s campus using GPS-enabled maps.
- Learn about Points of Interest (POIs) with rich media.
- View upcoming university events.
- Interact with the AMA (Ask Me Anything) chatbot for real-time information.
- Visitors exploring campus independently
- Prospective students during open houses
- Current students for event details and campus info
- Self-Guided POI Tour
- Upcoming Campus Events
- AMA Chatbot
- Secure Authentication
| Tools | Link | Version |
|---|---|---|
| Kotlin | Kotlin | |
| Jetpack Compose | Jetpack Compose | |
| Dagger Hilt | Dagger Hilt | |
| Coroutines | Coroutines | |
| Architecture Components | Android Architecture Components |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
-
Structure:
Each workflow file (.github/workflows/*.yml) has:- A name (e.g., “Unit Testing workflow”).
- Triggers (e.g.,
on: pull_request: branches: [ dev ]). - Jobs that run on
ubuntu-latestwith steps:- Checkout your repo
- Set up JDK (actions/setup-java@v4)
- Create
local.propertiesfrom Secrets - Cache Gradle dependencies (actions/cache@v3)
- Run Gradle tasks (
test,bundleRelease, signing, deployment, etc.)
-
Actions:
-
Outputs:
- Build logs and test results in the GitHub Actions UI.
- A new signed
.aabuploaded to Google Play’s internal track if onqa.
-
Containers/Environments:
- Runs in an ephemeral Ubuntu container provided by GitHub (
ubuntu-latest). - Java 17 is installed via
actions/setup-java.
- Runs in an ephemeral Ubuntu container provided by GitHub (
By combining these two GitHub Actions workflows, we have a streamlined CI/CD process:
-
Every Pull Request to
dev:- Runs unit tests to ensure code quality.
- No deployment; meant for code validation.
-
Every Push to
qa:- Runs the same unit tests.
- On success, increments the version, builds a release bundle, signs it, and uploads to the Google Play internal testing track for QA.






