- GET /api/feed: filter by tags (and/or), channel, duration, age, search; sort
newest/oldest/views/duration/shuffle; default hides Shorts, live/upcoming and
watched (was_live VODs stay visible); offset paging with has_more
- POST /api/videos/{id}/state for watched/saved/hidden/new
- User.preferences JSON + GET /api/me and PUT /api/me/preferences
- Migration 0004 (preferences column + video_states table)
|
||
|---|---|---|
| .. | ||
| versions | ||
| env.py | ||
| script.py.mako | ||