<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lumi.git/templates/stats.html, branch master</title>
<subtitle>Personal film diary</subtitle>
<id>https://git.tylerhoang.xyz/lumi.git/atom?h=master</id>
<link rel='self' href='https://git.tylerhoang.xyz/lumi.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/lumi.git/'/>
<updated>2026-05-15T08:50:15Z</updated>
<entry>
<title>Refine Lumi stats and detail UX</title>
<updated>2026-05-15T08:50:15Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-15T08:50:15Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/lumi.git/commit/?id=20c1d02b40bcb9abb5882d0503e596c82e9819bb'/>
<id>urn:sha1:20c1d02b40bcb9abb5882d0503e596c82e9819bb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add stats totals, runtime summary, and duplicate detection on add form</title>
<updated>2026-05-12T10:15:17Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-12T10:15:17Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/lumi.git/commit/?id=4279408876268f4960c98492d3814f5475e36e38'/>
<id>urn:sha1:4279408876268f4960c98492d3814f5475e36e38</id>
<content type='text'>
- Stats page now shows total films watched and total runtime (formatted
  as Xd Yh) in an overview panel above the world map
- /stats/data endpoint includes total_runtime_minutes in payload
- New GET /films/find endpoint returns all shelf matches for a tmdb_id
- Add film form shows an inline notice when the selected TMDB film is
  already logged, with shelf name, date, and a link to the entry
- Update CLAUDE.md and README to reflect current auth, OMDb, and
  router/service structure

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Remove rewatch rate metric</title>
<updated>2026-05-07T07:04:38Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-07T07:04:38Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/lumi.git/commit/?id=efd4f1ea3cf9f3d7335ed718c5d7fd44354147f9'/>
<id>urn:sha1:efd4f1ea3cf9f3d7335ed718c5d7fd44354147f9</id>
<content type='text'>
The rewatch rate (percentage of films rewatched) is less useful than the detailed rewatch patterns panel. Removed the metric section from both the template and backend payload.

Co-Authored-By: Claude Haiku 4.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Move rewatches panel to sit right of rewatch rate</title>
<updated>2026-05-07T07:03:41Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-07T07:03:41Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/lumi.git/commit/?id=d90430bbec3739df43b261618816077598499648'/>
<id>urn:sha1:d90430bbec3739df43b261618816077598499648</id>
<content type='text'>
Changed rewatch patterns panel from stats-panel-wide to regular stats-panel so it displays in the two-column grid next to the rewatch rate metric.

Co-Authored-By: Claude Haiku 4.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Add rewatch patterns stats panel</title>
<updated>2026-05-07T07:02:25Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-07T07:02:25Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/lumi.git/commit/?id=84ac42e5be00fe7591a6946f27a33770b0270a41'/>
<id>urn:sha1:84ac42e5be00fe7591a6946f27a33770b0270a41</id>
<content type='text'>
Adds a "Rewatches" section to /stats that displays films you've watched multiple times, grouped by title. For each rewatched film, shows:
- Watch count (e.g., "3×")
- Rating history (e.g., ✦ → ✦✦ → ✦) with accent highlight when ratings drift
- Days between first and last watch

Changes:
- routers/stats.py: Group films by title in _build_stats_payload, compute rewatch details (ratings, days between, rating change flag), add rewatch_patterns key
- templates/stats.html: Add "Rewatches" panel HTML and JS renderer (renderLists)

Co-Authored-By: Claude Haiku 4.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Add genre tracking and year-in-review improvements</title>
<updated>2026-05-07T01:05:07Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-07T01:05:07Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/lumi.git/commit/?id=ead38fdb13abb406065cef0743d7e411cb27eaf3'/>
<id>urn:sha1:ead38fdb13abb406065cef0743d7e411cb27eaf3</id>
<content type='text'>
Adds genre field to Film model with TMDB enrichment. Genres populate from
TMDB detail fetch during add/edit and bulk enrichment. Genre metadata displays
on film cards, detail page (Production section), stats page (top genres panel),
and year-in-review (by decade and genre breakdowns).

Auto-detects rewatches when adding films via TMDB autocomplete - if a film with
the same TMDB ID already exists in diary, pre-fills rewatch checkbox and count.
Rewatch count now displays on film cards as "Rewatch #N".

Stats page now shows:
- Top genres (most watched)
- Film decades (sorted chronologically)
- Already shows: directors, companions, star distribution, rewatch rate

Year-in-review shows decades and genres alongside monthly activity and companions.

Bulk enrichment endpoint (/data/enrich-posters) now fetches missing genre
metadata along with posters and TMDB IDs.

Co-Authored-By: Claude Haiku 4.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Hide solo from watched with stats list</title>
<updated>2026-05-06T23:50:56Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-06T23:50:56Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/lumi.git/commit/?id=21f0cb70ca8f6c1731bf0e514e2668f42ea00718'/>
<id>urn:sha1:21f0cb70ca8f6c1731bf0e514e2668f42ea00718</id>
<content type='text'>
Filter out 'solo' entries from the watched_with_breakdown on the stats
page so only companions are shown.

Co-Authored-By: Claude Haiku 4.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Add year review and inline diary ratings</title>
<updated>2026-05-06T21:34:01Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-06T21:34:01Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/lumi.git/commit/?id=a3df69ff5218cee132a6def9d860cd0276cc0cd4'/>
<id>urn:sha1:a3df69ff5218cee132a6def9d860cd0276cc0cd4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>init: lumiere film diary</title>
<updated>2026-05-06T19:21:26Z</updated>
<author>
<name>Tyler Hoang</name>
<email>tyler@tylerhoang.xyz</email>
</author>
<published>2026-05-06T19:21:26Z</published>
<link rel='alternate' type='text/html' href='https://git.tylerhoang.xyz/lumi.git/commit/?id=e708bec6cd76c2686de4158dde4d04f72a3c300d'/>
<id>urn:sha1:e708bec6cd76c2686de4158dde4d04f72a3c300d</id>
<content type='text'>
</content>
</entry>
</feed>
