# `Laev.Watchlist`
[🔗](https://github.com/alexdont/laev/blob/main/lib/laev/watchlist.ex#L1)

The user's curated to-watch list — intent, as opposed to `Resume`'s
automatic history. Titles are pinned/unpinned with ctrl-s from any title
picker and browsed from the main menu. ETS mirrored to JSON, same pattern
as `Resume`.

Entries are plain string-keyed maps:

    %{"type", "tmdb_id", "title", "year", "poster", "added_at"}

# `add`

Pin a title (from a TMDB title map: type/id/title/year/poster).

# `all`

All watchlist entries, most recently added first.

# `count`

# `has?`

# `init`

Make sure this scope's table exists. Asking for it is enough.

# `key`

# `reload`

Drop the cache and re-read watchlist.json — for when something other than
this module rewrote the file (a sync pull).

# `remove`

# `toggle`

Pin if unpinned, unpin if pinned. Returns :added | :removed.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
