-
74e9a52096
Fix Following page: replace 9-subquery-per-channel stats with 2 CTEs + indexes
Mattias Tall
2026-05-26 16:04:41 +02:00
-
1cd8645957
Fix YouTube hammering, sync rate limiting, and Following load time
Mattias Tall
2026-05-26 16:00:37 +02:00
-
0d6dd94029
VideoCard: redesigned list view, removed grid descriptions, smaller mobile fonts
Mattias Tall
2026-05-26 15:59:15 +02:00
-
cb05b739a8
Mobile UX: fixed bottom nav, compact header, less cramped cards
Mattias Tall
2026-05-26 12:30:23 +02:00
-
3e63281849
Fix channel avatars missing from all home-feed SQL modes
Mattias Tall
2026-05-26 12:22:21 +02:00
-
b3c288a590
Fix channel avatar: include channel_thumbnail_url in video response
Mattias Tall
2026-05-26 12:16:43 +02:00
-
aaa9d0145e
Fix description text clipping in video cards
Mattias Tall
2026-05-26 12:03:56 +02:00
-
f5a35cd1f2
Add view count and description snippet to grid video cards
Mattias Tall
2026-05-26 12:02:50 +02:00
-
1df396590f
Redesign video cards with channel avatar; fix mobile bottom nav
Mattias Tall
2026-05-26 12:01:43 +02:00
-
c7ec8c21f2
Add paste-from-YouTube import to subscription section
Mattias Tall
2026-05-26 11:47:16 +02:00
-
83e1b18c5b
Fix max_comments format: use full 4-tuple for yt-dlp YouTube extractor
Mattias Tall
2026-05-26 11:45:15 +02:00
-
50ce373767
Fix comment fetching: write to temp file instead of parsing stdout
Mattias Tall
2026-05-26 11:38:00 +02:00
-
18b3c572f1
Simplify likes display: plain text in meta row, no bar
Mattias Tall
2026-05-26 11:34:40 +02:00
-
74e2b4cd73
Fix comments (Python API), add dislike bar
Mattias Tall
2026-05-26 11:33:00 +02:00
-
c9e64d2814
Fix comment extractor args separator (, → ;) and use comment_sort=top
Mattias Tall
2026-05-26 11:27:26 +02:00
-
3f225e7647
Add like count to videos
Mattias Tall
2026-05-26 11:25:44 +02:00
-
ffd46b5e08
Fix missing view_count column migration on startup
Mattias Tall
2026-05-26 11:20:40 +02:00
-
8221177615
Add view count to videos
Mattias Tall
2026-05-26 11:18:53 +02:00
-
cdf6520fd8
Add lazy comment fetching to watch page
Mattias Tall
2026-05-26 11:15:41 +02:00
-
d6dd07e0bd
Add delete button to taste profile tags in Stats
Mattias Tall
2026-05-26 11:07:32 +02:00
-
a4cd32da4a
Add PWA support and Google Takeout subscription import
Mattias Tall
2026-05-26 11:04:42 +02:00
-
219a388d72
Channel page: overlay avatar/name/buttons on banner
Mattias Tall
2026-05-26 10:58:31 +02:00
-
426e85c2c9
Mobile nav, channel banners, search channel linking
Mattias Tall
2026-05-26 10:55:25 +02:00
-
ecb246ed99
Add yt-dlp diagnostic button to Settings page
Mattias Tall
2026-05-26 10:45:28 +02:00
-
a33491fee0
Fix login: don't intercept 401 on auth/login itself
Mattias Tall
2026-05-26 10:40:33 +02:00
-
fb2e42051e
Fix Watch page crash: import getQueue
Mattias Tall
2026-05-26 10:23:24 +02:00
-
ba03245449
Fix EJS: install yt-dlp[default] and enable --js-runtimes node
Mattias Tall
2026-05-26 10:19:00 +02:00
-
050caead54
Install Node.js via nodeenv (pip); use web client
Mattias Tall
2026-05-26 10:16:10 +02:00
-
53ea64ee8a
Switch to web_embedded player client
Mattias Tall
2026-05-26 10:12:32 +02:00
-
b58dc26bd4
Switch to android_vr player client — no Node.js required
Mattias Tall
2026-05-26 10:10:58 +02:00
-
a006bf08bc
Add node symlink to Dockerfile; expand ytdlp-test diagnostics
Mattias Tall
2026-05-26 10:06:53 +02:00
-
299338ff80
Fix double _cookie_args() call in download; fix diagnostic player client
Mattias Tall
2026-05-26 10:01:24 +02:00
-
3e439f2d3a
Add Node.js to Docker image; use web player client only
Mattias Tall
2026-05-26 09:57:02 +02:00
-
98d986cd95
Fix cookie fallback breaking yt-dlp in Docker; add OAuth2 auth flow
Mattias Tall
2026-05-26 09:53:02 +02:00
-
b3284b35da
Set yt-dlp cache dir to /data/yt-dlp-cache for persistent OAuth tokens
inputnoise
2026-05-25 21:56:41 +02:00
-
32af6c1c49
Try tv player client first to bypass datacenter IP bot detection
inputnoise
2026-05-25 21:45:05 +02:00
-
4ab8245a93
Debug: log fetch_video_metadata cookie args and errors
inputnoise
2026-05-25 21:42:02 +02:00
-
8c291f5c2d
Hardcode download bind mount directly to /mnt/serverdata/youtube
inputnoise
2026-05-25 21:31:40 +02:00
-
9487261e11
Hardcode download volume path to /mnt/serverdata/youtube
inputnoise
2026-05-25 21:30:36 +02:00
-
28441ca726
Use named volume for downloads so DOWNLOAD_PATH from stack.env is respected on every redeploy
inputnoise
2026-05-25 21:28:47 +02:00
-
a09f8ac5c2
Use print() for cookie debug log so it shows in container logs
inputnoise
2026-05-25 21:25:39 +02:00
-
d50ccf399f
Log cookie args on download start for debugging
inputnoise
2026-05-25 21:19:26 +02:00
-
a2a84d2c04
Use iOS player client to bypass YouTube bot detection (fixes 'only images available')
inputnoise
2026-05-25 21:04:24 +02:00
-
5f5ca52b95
Add cookies.txt upload UI — drag/drop or click to upload, stored in data volume
inputnoise
2026-05-25 21:01:02 +02:00
-
56dd5f8360
Add cookies file support for Docker; auto-detect /data/cookies.txt
inputnoise
2026-05-25 20:57:04 +02:00
-
bcc425b6fb
Fix volume permissions: entrypoint chowns /data to uid 1000, run app as non-root
inputnoise
2026-05-25 20:50:10 +02:00
-
03b10b6f86
Always install latest yt-dlp on build
inputnoise
2026-05-25 20:38:25 +02:00
-
2a2ba0f41c
Proxy /files/ through nginx to backend for video playback
inputnoise
2026-05-25 20:32:16 +02:00
-
1a5d074de4
Remove exposed backend port — only frontend proxy needed
inputnoise
2026-05-25 20:27:45 +02:00
-
a652f6e7a8
Add stack.env for Portainer repository deployment
inputnoise
2026-05-25 20:26:33 +02:00
-
a3b73fbf72
Remove unused JELLYFIN_URL config
inputnoise
2026-05-25 20:25:08 +02:00
-
7194ec45ec
Remove ALLOW_REGISTRATION env var — managed via admin UI instead
inputnoise
2026-05-25 20:16:15 +02:00
-
1827dd6c4e
Initial commit — YT Hub
inputnoise
2026-05-25 20:09:04 +02:00