aboutsummaryrefslogtreecommitdiff
path: root/web/templates.templ
Commit message (Collapse)AuthorAge
* Chart power vs time for official climb attemptsMartin Kagamino Lehoux2026-09-25
| | | | Snapshot average power per attempt in a nullable average_power_w column (backfilled from stored rides), plot each powered attempt on the climb page as duration vs average watts with ride hover and click-through, and show avg power in the attempts table.
* Match official climbs against their recorded sampleMartin Kagamino Lehoux2026-09-24
| | | | | | | | | | | | | | | | | | | | | | An official climb matched on endpoint coordinates alone. On a loop ridden the other way the route meets the climb's top before its bottom, so pairing each start with the first end inside its lap window credited a 5.9 km passage as the 850 m Chemin de la Tour Pey Blanc, and a 49 km one on another ride. Climbs now keep the sample of the segment they were created from: the recorded length and elevation gain of the selected route points, captured by the ride detail and preview handlers and stored NOT NULL. Matching takes the whole route and drops any candidate outside ±50% of that sample on either axis, and attempts are refreshed by upsert and prune so re-analyzing a ride keeps the recorded-at stamp of the passages that survive. The backfill leaves the web package: backfill.Run recomputes ride values then official climb attempts as a single `go run . backfill` command (climbs-backfill is gone), rideanalysis owns the attempt snapshot, and the mountain-pass loading margin is shared. Applied to the stored rides it stamps 78 samples, drops the four bogus attempts and leaves ride 800 with its three Pont Rout passages.
* 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.
* Preview: analyze a raw GPX or FIT file without persisting itMartin Kagamino Lehoux2026-09-06
|
* Display Cotacol in the ride detail summaryMartin Kagamino Lehoux2026-09-01
|
* Rename rides.type to external_sport_type, infer bike type from Strava sport ↵Martin Kagamino Lehoux2026-08-28
| | | | type and display categories in UI
* Add Strava external link to ride detailMartin Kagamino Lehoux2026-08-27
|
* Use radio inputs and collapsible curation on ride detailMartin Kagamino Lehoux2026-08-27
| | | | | | Replace dropdowns with vertical radio groups for bike and ride type. Make curation block collapsible (details/summary) collapsed by default and expanded when both categories are empty.
* Lint & fixMartin Kagamino Lehoux2026-08-27
|
* analytics groupingMartin Kagamino Lehoux2026-08-25
|
* Ride type multiselect filter with a checkbox group across library and analyticsMartin Kagamino Lehoux2026-08-24
|
* Add type filtering, drop hard-coded filters and route filter, tune backtestMartin Kagamino Lehoux2026-08-24
|
* Add data quality bulk categorisation pageMartin Kagamino Lehoux2026-08-24
|
* Add hardcore ride categorisation with bike and ride typesMartin Kagamino Lehoux2026-08-23
|
* Add normalized difficulty versus moving duration to analyticsMartin Kagamino Lehoux2026-08-23
| | | | | | | Extend analytics with a second scatter plotting Cotacol per 100 km against moving hours, keep speed versus Cotacol as first chart, render both canvases from shared points, open ride detail in a new tab on dot click, and keep all website copy in English.
* Merge ride and rides packages into ride/store following mountain_pass structureMartin Kagamino Lehoux2026-08-23
| | | | | | | | Consolidate persistence (Save, List, Backfill) into ride/store.go alongside ride.go/climb.go/moving_time.go, rename rides.Ride to ride.StoredRide to avoid collision with parsed ride.Ride, update all web/cli consumers and RideView to use named Ride field, adjust templates and regenerate templ files, and remove rides directory.
* Add distance filter to analytics and go fix to the check gateMartin Kagamino Lehoux2026-08-21
|
* Componentize and isolate the ride range filterMartin Kagamino Lehoux2026-08-21
|
* Add global analytics scatter chartMartin Kagamino Lehoux2026-08-21
|
* Add global analytics page shell and split server.go by concernMartin Kagamino Lehoux2026-08-21
|
* feat(web): add sortable average speed column to ride libraryMartin Kagamino Lehoux2026-08-21
|
* feat(ride): persist canonical moving time, preserve Strava referenceMartin Kagamino Lehoux2026-08-21
|
* feat(web): add ride library filtersMartin Kagamino Lehoux2026-08-18
|
* feat(web): display nearby passes on ride mapsMartin Kagamino Lehoux2026-08-17
|
* refactor(web): tidy climb matching controlsMartin Kagamino Lehoux2026-08-17
|
* feat(web): improve official climb profileMartin Kagamino Lehoux2026-08-16
|
* refactor(web): establish JavaScript module toolingMartin Kagamino Lehoux2026-08-16
|
* refactor(web): extract testable profile logicMartin Kagamino Lehoux2026-08-16
|
* refactor(web): derive climb display groupsMartin Kagamino Lehoux2026-08-16
|
* refactor(web): split official climb profile scriptMartin Kagamino Lehoux2026-08-16
|
* feat(web): improve ride detail climb profilesMartin Kagamino Lehoux2026-08-16
|
* feat: add official climb workflowMartin Kagamino Lehoux2026-08-14
|
* refactor(web): extract ride detail scriptMartin Kagamino Lehoux2026-08-11
|
* refactor(web): centralize OKLCH paletteMartin Kagamino Lehoux2026-08-11
|
* refactor(web): extract embedded stylesheetMartin Kagamino Lehoux2026-08-11
|
* feat: add interactive ride profileMartin Kagamino Lehoux2026-08-11
|
* fix: Continue Strava import after invalid activitiesMartin Kagamino Lehoux2026-08-11
|
* feat: Add Strava import progressMartin Kagamino Lehoux2026-08-11
|
* feat: Add ride detail mapMartin Kagamino Lehoux2026-08-11
|
* feat: Add ride table sortingMartin Kagamino Lehoux2026-08-07
|
* feat: Add web ride library with Strava syncMartin Kagamino Lehoux2026-08-05