Skip to content

v2.0.0

Choose a tag to compare

@ldtnz ldtnz released this 16 Sep 19:19
· 76 commits to main since this release
03641fb

Cinemory 1.0 was a catalog of what you had already watched. 2.0 is about what
you watch next: Claude reads your catalog and suggests titles, the plain search
falls back to asking it in your own words, and a watchlist sits alongside the
watched half.

87 commits since v1.0.0.

Ask Claude

  • Recommendations — suggestions based on your catalog, each with a reason,
    refreshed automatically every 5 days and kept as history. Watch the trailer
    from the suggestion, add it to the watchlist in one click, or say "not
    interested" and it never comes back. Nothing you have already watched is ever
    suggested.
  • Search with AI — when you cannot remember a title, describe it. "The long
    fantasy trilogy about a ring" finds it. Offered whenever the plain search
    comes up empty in Watched, and always in "To watch", where it searches all of
    TMDB rather than only your catalog.
  • Both are optional and off unless ANTHROPIC_API_KEY is set. A search costs
    roughly 300 input tokens: the catalog is never sent to the model, which names
    works from its own knowledge and is matched against your library locally.

A watchlist

  • A Watched / To watch switch. In "To watch" the search browses all of TMDB,
    hiding what you have already seen, and a click adds it.
  • Move titles either way: "Mark as watched" with an editable date, or back to
    "To watch" from the context menu.
  • The AI suggestions appear there as a strip you can add from directly.

Statistics

A new page: how much you have watched and where, movies against series, top
genres, titles per year, which decades they come from, first and most recent on
record, and your best-rated titles.

Import

  • One dialog per service. Pick where you are coming from and it shows what to
    click, what the file should look like, and whether the titles land in your
    watched half or in "To watch".
  • IMDb — your ratings export, now uploadable from the app rather than only
    through a script. It is the only source that knows what you made of a title,
    so your ratings come across with it.
  • Disney+ — Disney publishes no export and no API, so a bundled browser
    script reads your watchlist page and saves a CSV. It runs in your own browser
    and sends nothing anywhere. Watchlist only: a Disney+ watch history exists
    solely inside Disney and needs a GDPR request.
  • Re-importing the same file still changes nothing.

Catalog

  • Select several titles with shift-click and mark them watched, move them to
    "To watch", or delete them together.
  • Genre filter, and platform and sort moved into a proper filter dropdown.
  • New season available — series are checked automatically and flagged when
    TMDB's count goes up.
  • Export the whole catalog as JSON from Settings, as a backup independent of
    the database.
  • The grid now grows as you scroll instead of rendering everything at once. On a
    2000-title catalog a long-press took 18.9s before and 0.96s after.

Mobile and PWA

  • The long-press menu works on iOS and in the installed PWA — it no longer
    vanishes on release, its items no longer ignore taps, and two fingers on two
    posters open one menu rather than two.
  • Turn the phone sideways during a trailer and it fills the screen; everywhere
    else stays portrait.
  • A bigger, glass watch-mode switch, haptic feedback on long-press where the
    browser allows it, and no pinch-zoom on desktop either.

Polish

  • Native <select> dropdowns are gone: the list a native select opens belongs
    to the operating system, so on a dark page it arrived as a white macOS menu or
    a full-height iOS wheel. All eight are drawn now, with keyboard support intact.
  • Modals open with a short entrance instead of appearing in one frame, and the
    blur behind a context menu carries over to the dialog it opens rather than
    flashing.
  • Titles arrive in a quick wave as they come into view, on the first screen, on a
    switch between halves, and on each batch scrolled to.
  • The settings page had drifted into four designs stacked up; every section now
    shares one shape.

Upgrading

  • Run the migrations. Four were added since 1.0: 2_recommendations,
    3_recommendations_history, 4_dismissed_recommendations and
    5_new_season_check. Docker applies them on start. On Turso run
    npm run db:migrate-turso before deploying — prisma migrate deploy talks to
    a SQLite file, not to Turso.
  • ANTHROPIC_API_KEY is new and optional. Without it the app behaves as it
    did in 1.0; the AI features simply do not appear.
  • The "Deploy with Vercel" button is gone from the README. The Vercel + Turso
    instructions are unchanged — import the repository and set the four variables.

Nothing else needs changing: no existing variable was renamed, and the schema
additions default for rows already in your catalog.