NeskireDK c644d73def Add playlist-backed Trending/Popular feeds
New config lists trending_playlists / popular_playlists. When set,
the feed serves the merged content of those local PUBLIC playlists
instead of the stock feed:

- Swap at the data layer (fetch_trending, popular_videos), so the
  HTML views and /api/v1/trending|popular emit the same items and
  API clients (Yattee, Materialious) need no changes.
- Playlists merge in config order, each in its own order,
  duplicates dropped. Missing or non-public entries are skipped
  and logged, never fatal.
- One local Postgres query per playlist — no YouTube call.
- PlaylistVideo converts to SearchVideo with neutral defaults for
  metadata a playlist row lacks (views, description, thumbnails).
- Trending category tabs and region are ignored while set. With a
  single trending playlist, 'View as playlist' links to it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-12 18:47:52 +02:00
..