Skip to content

alan-mcl/driver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Driver

Driver logo

Personal decision-support desktop app for researching, comparing, scoring, and shortlisting vehicles for purchase. Local-first JSON persistence — no cloud, no database.

Requirements

  • Java 21 or later
  • Maven 3.9+

Build and Run

# Compile
mvn compile

# Run tests
mvn test

# Run from source
mvn exec:java -Dexec.mainClass="za.driver.Application"

# Build runnable fat JAR
mvn package
java -jar target/driver-1.2.jar

Data Directory

On first run, Driver creates a data/ directory in the current working directory (gitignored):

  • data/vehicles/{uuid}.json — vehicle records
  • data/profiles/{uuid}.json — scoring profiles (metric weights and aggregate composition)
  • data/app-config.json — active scoring profile id
  • data/garage-config.json — garage dimensions for clearance checks

Back up data/ to preserve your research. Run the JAR from a directory where you want data/ to live.

Features

  • Import vehicles from JSON or CSV; export fleet to CSV
  • Export selected vehicles to an offline Reveal.js marketing presentation (File → Export Presentation…)
  • Filter and sort by price, body type, fuel type, scores, and garage clearance
  • Multiple scoring profiles with toolbar selector; create, duplicate, edit, and delete via Config → Manage Profiles…
  • Configurable top metrics, aggregate name/weight, and aggregate composition per profile
  • Star ratings and scatter plot for fleet comparison
  • Side-by-side vehicle comparison (View → Compare…): up to four columns, raw specs and derived scores
  • Freeform notes per vehicle

Documentation

Document Purpose
docs/design_spec.md Functional requirements and architecture
docs/data_dictionary.md Entity fields, enums, import schema
docs/scoring_spec.md Scoring formulae and weights
docs/backlog.md Deferred features and future work

Branding

Asset File Usage
Logo docs/logo.png About dialog, documentation
Icon docs/icon.png Window and taskbar icon

Branding files in docs/ are copied into the application JAR at build time.

License

Copyright (C) 2026 Alan McL

This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). See https://www.gnu.org/licenses/agpl-3.0.html.

About

Driver is a personal decision-support application for researching, comparing, scoring, and shortlisting vehicles for purchase. The system is designed around storing raw vehicle data and deriving scores from configurable scoring models.

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages