Skip to main content
Feature

TV Diary

Track series separately from films. Movies use Movie Diary at /[handle]/movies; TV uses /[handle]/tv. Sleep dreams belong in Dream Diary at /[handle]/dreams.

Episode log

Log what you are watching with season/episode numbers when you mention them (e.g. Episode 8). Each log is a row in your TV Diary.

Search & sort

Search by show title or notes. Sort newest or oldest; switch between timeline list and poster grid.

Edit logs (owner)

When logged in as the diary owner, use the pencil to fix date/time, season, episode, notes, or delete an entry.

Poster grid

Grid layout matches the /tv catalog — 1px gutters, square tiles, hover overlay with show title and episode progress.

Catalog at /tv

TV series live in notable_people with entity_type=show. Public profiles at /tv/[slug]; your diary at /[handle]/tv.

Dayze Agent

Say "I'm on Episode 8 of Person of Interest" — the agent calls log_tv_watch (not log_movie_watch or create_event). Missing shows: OMDb/IMDb when OMDB_API_KEY is set, else Wikidata/Wikipedia (no key).

Data model

Personal logs: user_tv_log (user_id, show_slug, watched_at, season_number, episode_number, notes). Catalog: notable_people with entity_type=show.

Calendar: Episodes mirror to /calendar (external_source=user_tv_log). Live sync on log_tv_watch and diary edits. Backfill: npm run sync:tv-diary-events -- --handle=you.

Agent tool: log_tv_watch. UI refresh event: DAYZE_TV_LOG_UPDATED_EVENT.

Apply migration migrations/20260602_user_tv_log.sql in Supabase before using in production.