aboutsummaryrefslogtreecommitdiff
path: root/main.go
Commit message (Collapse)AuthorAge
* Persist official climb attempts with climbs pagesMartin Kagamino Lehoux2026-09-13
| | | | | | | | | | | | | Record one attempt row per (ride, climb, occurrence) when a ride detail loads, snapshotting distance, elevation gain, slope, cotacol and attempt timestamps; a climbs-backfill CLI command seeds all existing rides. New /climbs list page aggregates attempts (medians computed in Go, best time as min duration) with sortable columns, and /climbs/{id} shows the median scalar stats, a median normalized elevation profile (50 steps over each attempt's own length), the full-precision recorded route of the median-distance attempt on an OSM map, and every attempt with time at second precision.
* Split cli.go into per-domain command filesMartin Kagamino Lehoux2026-09-06
| | | | | Move each CLI command into its owning package (mountain_pass, ride, web) with dispatch and usage in main.go; remove the cli package.
* Use subcommand args instead of flags for CLIMartin Kagamino Lehoux2026-08-27
|
* Add local Pyroscope server and Go continuous profilingMartin Kagamino Lehoux2026-08-27
| | | | | | | | | Add a docker-compose service running the Grafana Pyroscope backend on port 4040 with a persistent data volume, and instrument the Go app via github.com/grafana/pyroscope-go. The app pushes CPU, memory, and goroutine profiles every 10s when pyroscope.enabled is set in config.yaml. Config is extended with application_name and server_address (defaults to http://localhost:4040). Document usage in the README.
* refactor: Extract CLI and chart packagesMartin Kagamino Lehoux2026-08-05
|
* refactor: Replace env config with atomic YAMLMartin Kagamino Lehoux2026-08-05
|
* feat: Add web ride library with Strava syncMartin Kagamino Lehoux2026-08-05
|
* feat: Sync Strava rides as GPX filesMartin Kagamino Lehoux2026-08-03
|
* feat: Detect mountain pass crossings, name climbs after passes, render ride ↵Martin Kagamino Lehoux2026-08-03
| | | | | | | | | | charts - osmpass: extract mountain_pass=yes nodes from an OSM PBF, enrich centcols passes with OSM coordinates, resumable -fetch-osm download - mountain_pass: DetectCrossings for a ride, MatchClimb to name a climb after the pass it tops - ride: expose Points(), add Climb.Top() and Climb.Name - chart: -chart renders elevation profile with climb bands and pass markers - commands: -fetch-osm, -extract-osm, -import-cached, -enrich
* feat: Add Cotacol difficulty score for ridesMartin Kagamino Lehoux2026-08-01
|
* feat: Download mountain passes from centcols into SQLiteMartin Kagamino Lehoux2026-08-01
|
* Cleanup parsingMartin Kagamino Lehoux2025-04-21
|
* test: Add some test to fix behaviorMartin Kagamino Lehoux2024-07-28
|
* refactor: Improve readabilityMartin Kagamino Lehoux2024-07-28
|
* perf: Precompute distanceMartin Kagamino Lehoux2024-07-28
|
* feat: Simple working version (but slow)Martin Kagamino Lehoux2024-07-26