6-person group project to create a New Zealand tramping app, as part of the SENG202 2025 course at the University of Canterbury.
The name of this app was chosen from the definition of the word "yomp", which means "a march with heavy equipment over difficult terrain". The decision to multiply it by 2 was to create a more interesting name for the user, and help with memorability.
This app loads DOC datasets into a database, profiles the user, and recommends trails to the user based on their preferences. The user can also access each trail to view further information, and will be able to view the route on a map, and the current weather at the location. A trails screen is also included to help user filter, search, and sort for the trail that they would like to find manually.
- JDK >= 21 click here to get the latest stable OpenJDK release
- (optional) Gradle Download and Install
Clone the project
git clone https://eng-git.canterbury.ac.nz/seng202-2025/seng202-25-team5Go to the project directory and run
./gradlew runCreate a packaged Jar
./gradlew jarGo to build directory
cd app/build/libsOpen the application
java -jar yompyomp.jarImportant
This Jar is NOT cross-platform, so you must build the jar on the appropriate OS (and machine) to where you want to run it.
Note
When the application is first launched images will slowly populate alphabetically.
To run tests, run the following command
./gradlew testThe weather system requires an API key from OpenWeatherMap. Either set your system environment or include the key in a config.properties file.
| Option | Parameter | Instructions |
|---|---|---|
| Config File | openweather.api.key |
Move to app/src/main/resources/ |
| Environment | OPENWEATHER_API_KEY |
Add to system environment variables |
- UC_1 Complete Profile Quiz
- UC_2 View Personalised Recommended Trails
- UC_3 View Highlighted Trails
- UC_4 View All Trails
- UC_5 Search Trails
- UC_6 View Single Trail (without map and weather)
- UC_7 Add Missing Trail
- UC_8 Modify Existing Trail
- UC_9 Log Trail
- UC_10 Access Logbook
- UC_11 Access Account
- UC_12 View and Customise Profile
- Iwi Bi-cultural component
- Kehu Basic UI and Loading Existing Data
- Hillary Extended Viewing and Data Filtering
- Tasman Basic Exploration
- Tia Extended Loading and Data Input
- Dudley Dobson Data Validation
- Brunner Persistent Data Storage
- Colenso Graphs & Charts
- Heaphy Map Browsing
- Kupe Map Visualisations
These are features the team is most proud of.
- Minimalist and consistent UI
- Matchmaking recommendation algorithm
- Filtering and sorting features
- Setup quiz interface
- Map interface
- Weather system
- Logbook features
- Modification and addition of trails
- Guest mode functionality
- Account statistics
- Multiple user profiles
- Trail routes
- Mobile app support
- External database (not local)
- Upload new dataset
AI was used sparingly to assist with debugging, as well as IntelliJ Idea Code Completion and GitHub Copilot Completions.
:)
