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. |
||
|---|---|---|
| .. | ||
| bag_list.html | ||
| brew_list.html | ||
| gear_list.html | ||
| roast_list.html | ||
| roast_options.html | ||
| roaster_list.html | ||
| table.html | ||
| timeline_chunk.html | ||
| timeline_month.html | ||