Offline smart rental search scaffold for the MapsAroundYou team project.
Watch the MapsAroundYou demo video on YouTube:
Prerequisite: Java 21 or newer (x86_64/AMD64) on PATH or in JAVA_HOME.
Run the JavaFX GUI entrypoint:
.\gradlew runGuiOn Windows ARM64, \.\gradlew runGui auto-switches to an installed x64 Java runtime when available.
Run the default Gradle entrypoint (GUI):
.\gradlew runThis launches the packaged JavaFX app through the same launcher used by the runnable JAR.
Build the runnable fat JAR:
.\gradlew shadowJarRun the CLI entrypoint from the built fat JAR:
java -cp .\build\libs\MapsAroundYou-0.5.1-all.jar mapsaroundyou.cli.MapsAroundYouApp search --destination D01 --max-rent 2200 --max-commute 45 --max-transfers 1 --max-walk 10 --result-limit 5 --sort balanced --require-aircon --exclude-walk-dominantRun the local quality gate:
.\gradlew clean check- User Guide (end users):
docs/UserGuide.md - Developer Guide (contributors):
docs/developer-guide.md
- The project currently supports both JavaFX GUI and CLI entrypoints.
- GUI startup is available through the
runGuiand defaultrunGradle tasks. - The codebase is organized into
gui,cli,app,logic,service,storage, andmodellayers, withApplicationFactoryas the sole composition root. - Runtime data stays local under
src/main/resources/commute_data/. - Last-used search preferences are stored locally under the current user's home directory.
- Persona preset and dark-mode settings are persisted for returning users.
All changes to main must go through a pull request. The required
PR Quality Gate check must pass before merge. That gate now aggregates
PR Quality Check on Ubuntu and the cross-OS PR Build Gate (Linux),
PR Build Gate (macOS), and PR Build Gate (Windows) runnable-JAR
builds on Temurin Java 21 x64. We recommend asking for at least
1 approving review before merging. While this is not enforced, it is
still best practice to request review.
- Fork the repository to your GitHub account
- Clone your fork locally
- Create a feature branch for your work
- Push your changes to your fork
- Create a PR from your fork to
cs2103de-tp/MapsAroundYou
See docs/development/fork-workflow.md for detailed setup instructions and docs/development/git-commit-conventions.md for commit guidelines.
The offline commute matrix generator uses a teammate-local OneMap token via ONEMAP_TOKEN. See docs/ops/build-and-run.md for token setup and regeneration steps.