summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorMartin Kagamino Lehoux <martin@lehoux.net>2026-08-05 15:09:44 +0200
committerMartin Kagamino Lehoux <martin@lehoux.net>2026-08-05 15:09:44 +0200
commit8f829816e35a41844808d1d338fd02dcc0320981 (patch)
tree659ca819a3a2f617b4620f6980a221240806b1cf /README.md
parentb6ca97fe994c46737e0aa5c73e8b3d924ddaecd2 (diff)
refactor: Extract CLI and chart packages
Diffstat (limited to 'README.md')
-rw-r--r--README.md18
1 files changed, 12 insertions, 6 deletions
diff --git a/README.md b/README.md
index 611266c..22cc372 100644
--- a/README.md
+++ b/README.md
@@ -87,13 +87,15 @@ Standard apps are rate-limited to 100 calls per 15 minutes and 1,000 per day.
- `rides` — SQLite persistence for imported ride metadata
- `config` — typed YAML configuration and atomic persistence
- `web` — HTTP server, OAuth callback, sync orchestration, and templ pages
+- `cli` — legacy mountain-pass, OSM, demo, and chart command handlers
+- `chart` — elevation chart rendering
- **Notable choices** — the difficulty score follows the Cotacol method: the ride is split into fixed 100 m segments and each scores `distance_km × slope²`, so steep sections weigh exponentially more than long flat ones
```mermaid
flowchart TB
%% Arrow X --> Y means: X depends on Y
- main["main (CLI + server: main.go, chart.go)"]
+ main["main (bootstrap: main.go)"]
ride["ride (GPX parsing, climbs, Cotacol)"]
mpass["mountain_pass (centcols, crossings)"]
@@ -102,11 +104,15 @@ flowchart TB
rides["rides (SQLite persistence)"]
config["config (YAML)"]
web["web (HTTP + templ)"]
-
- main --> ride
- main --> mpass
- main --> osmpass
- main --> web
+ cli["cli (legacy commands)"]
+ chart["chart (renderer)"]
+
+ main --> cli
+ cli --> ride
+ cli --> mpass
+ cli --> osmpass
+ cli --> web
+ cli --> chart
mpass --> ride
web --> strava
web --> rides