brewlog/templates
Jon Seager 949f65ac16
refactor(timeline): denormalize data and simplify frontend
Database:
- Add slug, roaster_slug, brew_data_json columns to timeline_events
- Migration backfills existing data from related tables
- Remove 9-way LEFT JOIN from list query, read directly from columns

Frontend:
- Use CSS :nth-of-type(odd/even) for alternating timeline layout
- Remove JavaScript class manipulation when appending month events
- Simplify infinite scroll month-merging logic

This eliminates query-time JOINs across 5 tables and ~20 lines of
client-side JavaScript for pattern maintenance.
2026-02-03 08:53:29 +00:00
..
partials refactor(timeline): denormalize data and simplify frontend 2026-02-03 08:53:29 +00:00
bags.html feat: add bags web views and templates 2025-11-27 14:02:55 +00:00
base.html feat: bootstrap brewlog platform 2025-11-24 11:44:12 +00:00
brews.html fix(brews): allow arbitrary values in numeric form fields 2026-02-02 19:59:51 +00:00
favicon.ico feat: bootstrap brewlog platform 2025-11-24 11:44:12 +00:00
gear.html refactor(gear): remove notes field from Gear entity 2026-02-02 16:16:54 +00:00
login.html feat(frontend): add login page and session-based authentication 2025-11-25 16:28:47 +00:00
nav.html feat(brews): add web views and templates 2026-02-02 19:31:46 +00:00
roast_detail.html feat: add bags web views and templates 2025-11-27 14:02:55 +00:00
roaster_detail.html feat: bootstrap brewlog platform 2025-11-24 11:44:12 +00:00
roasters.html feat(frontend): add login page and session-based authentication 2025-11-25 16:28:47 +00:00
roasts.html feat(frontend): add login page and session-based authentication 2025-11-25 16:28:47 +00:00
styles.css refactor(timeline): denormalize data and simplify frontend 2026-02-03 08:53:29 +00:00
timeline.html refactor(timeline): denormalize data and simplify frontend 2026-02-03 08:53:29 +00:00