Commit graph

174 commits

Author SHA1 Message Date
Jos Vooges | STH
97de6439b5 Proxy Stremio playback through Master to avoid node hairpin NAT.
Clients only talk to master.vonas.nl; Master fetches the node stream server-side and pipes Range responses.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:44:30 +02:00
Jos Vooges | STH
6f78f13af5 Serve direct node stream URLs; ACK library sync without blocking WS.
Stremio was hanging on Master 307 redirects. Sessions are created in stream.json with the node play URL. Full sync ACKs immediately so playback stays responsive.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:40:50 +02:00
Jos Vooges | STH
181ab0b7f6 Fix Fastify 5 redirect signature for playback.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:36:24 +02:00
Jos Vooges | STH
0608020556 Stop Stremio binge prefetch creating phantom next-episode streams.
Remove bingeGroup, skip session creation on HEAD probes, and hide stale sessions in admin.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:35:29 +02:00
Jos Vooges | STH
b1d008e8aa Fix playback hang: raise stream connection limit and freshen sessions.
Stremio opens many Range requests behind NPM; max 8 per IP caused stalls. Use lazy play URLs, hex tokens, CORS, and validate files before session ACK.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:34:09 +02:00
Jos Vooges | STH
eb8ae1e85a Fix Stremio playback, folder-aware scan, and remove STH branding.
Parse Plex-style Title (Year) and Show/Season folders; restore notWebReady with direct node stream URLs; hide unavailable titles by default.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:16:46 +02:00
Jos Vooges | STH
93dbf44fb8 Fix LibraryEventType switch cases for TypeScript build.
Use FILE_ADDED/FILE_UPDATED/FILE_REMOVED to match shared-types.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 01:59:28 +02:00
Jos Vooges | STH
7519c9228f Batch full library sync over WebSocket to avoid connection resets.
Large libraries (~30k files) overflowed a single WS message; sync now runs in ACK'd batches with event buffering on the node.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 01:58:31 +02:00
Jos Vooges | STH
7741500e73 Fix Stremio playback: lazy sessions, remove notWebReady, node ACK.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 01:47:54 +02:00
Jos Vooges | STH
3a7151e3ae Add one-command Unraid media-node install via Master.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 01:16:47 +02:00
Jos Vooges | STH
72a323e451 Do not force Secure cookies in production when site is served over HTTP.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 01:04:47 +02:00
Jos Vooges | STH
9b557cee54 Fix dashboard BigInt crash when storage fields are missing.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 01:03:04 +02:00
Jos Vooges | STH
39ecf1af56 Fix admin session cookie by setting it on the admin domain after login.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 01:00:16 +02:00
Jos Vooges | STH
29595dd98f Fix Fastify Stremio routes: wildcard must be last path segment.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 00:55:20 +02:00
Jos Vooges | STH
f6da966a92 Install @media-cluster packages after npm install so they are not wiped.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 00:51:34 +02:00
Jos Vooges | STH
4e232e8ef6 Fix master-api Docker runtime: flat deps, explicit env, longer health start period.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 00:48:41 +02:00
Jos Vooges | STH
96a0bbface Use generic Aanmelden title on login page.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 00:46:10 +02:00
Jos Vooges | STH
0a007aae83 Fix admin→master connectivity via host fallback; use generic login branding.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 00:45:53 +02:00
Jos Vooges | STH
89916d2c0b Fix admin login: runtime API proxy to master-api instead of broken build-time rewrite.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 00:43:22 +02:00
Jos Vooges | STH
4e21eb76ae Fix admin-ui Docker image: build as single app so server.js is at /app/server.js.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 00:40:46 +02:00
Jos Vooges | STH
78300409a7 Bind admin-ui to 0.0.0.0 so NPM can reach host port 3101.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 00:36:50 +02:00
Jos Vooges | STH
2df465577f Map Master to host ports 3100/3101 to avoid Dokploy UI port 3000 conflict.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 00:31:50 +02:00
Jos Vooges | STH
09c422254a Expose Master ports for Nginx Proxy Manager in front of Dokploy.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 00:27:55 +02:00
Jos Vooges | STH
a5c6fd5fe4 Initial commit: Distributed Stremio Media Cluster V1
Master API, Admin UI, Go media-node, Docker/Dokploy deploy configs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 00:17:04 +02:00