Initial commit: YouTube Studio Flow (backend, frontend, infrastructure, docs)
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
# Playlists
|
||||
|
||||
## User Perspective
|
||||
Playlists are synced from YouTube and can be managed per-video in the video editor. Users can add a video to one or more playlists, remove it from playlists, and sync the playlist list from YouTube to pick up newly created playlists.
|
||||
|
||||
### Video Editor — Playlists Section
|
||||
- Shows current playlists as chips with remove buttons
|
||||
- Search box filters available playlists from the channel
|
||||
- "Sync playlists" button refreshes the playlist list from YouTube
|
||||
|
||||
## Developer Perspective
|
||||
|
||||
### Backend
|
||||
- **Module**: `backend/src/modules/playlists/`
|
||||
- **Endpoints**: `GET /playlists/channel/:channelId`, `GET /playlists/video/:videoId`, `POST /playlists/channel/:channelId/sync`, `POST /playlists/video/:videoId/:playlistId`, `DELETE /playlists/video/:videoId/:playlistId`
|
||||
|
||||
### Data Model
|
||||
- `Playlist` — one per YouTube playlist, scoped to `channelId`
|
||||
- `VideoPlaylist` — join table with `videoId`, `playlistId`, `position`
|
||||
|
||||
### Quota Usage
|
||||
Adding a video to a playlist costs YouTube API quota. The `youtube-sync` processor handles this when syncing.
|
||||
|
||||
## Related
|
||||
- [[07 - Playlists API]]
|
||||
- [[01 - Video Management]]
|
||||
Reference in New Issue
Block a user