Stock Jellyfin renders subtitle stream entries as "<lang> - <CODEC> - (External|Internal|Embedded)[ - flag]". For ARRFLIX, which has at most one subtitle format per language, the codec and source suffix are noise. Add a small JS shim to web-overrides/index.html that matches that exact shape and collapses the label to "<lang>" (with "(Forced)" / "(SDH)" / "(Hearing Impaired)" if those flags are present; "Default" is dropped since it's redundant when there's only one stream of that language). Audio labels like "5.1Ch Surround Sound - English - AAC - Stereo - Default" have a different number of segments and don't match, so they pass through untouched. The shim runs after DOMContentLoaded and re-walks any nodes added later via MutationObserver (covers actionsheet dropdowns that mount lazily). Bracketed by /* SUB-LABEL-SHIM-BEGIN */ and /* SUB-LABEL-SHIM-END */ markers; bin/revert-sub-label-shim.sh deletes between the markers in one sed pass and saves a timestamped backup. No container restart needed (index.html is bind-mounted). |
||
|---|---|---|
| assets | ||
| bin | ||
| compose-dev | ||
| docs | ||
| processes | ||
| snapshots/2026-05-09-v6-stable | ||
| web-overrides | ||
| .gitignore | ||
| ADMIN-GUIDE.md | ||
| docker-compose.yml | ||
| README.md | ||
| ROADMAP.md | ||
My own premium streaming service. No compromise.
ARRFLIX is my personal streaming service. One library, hand-curated, no filler — every show and film is the best version I could put together. Where the source allows, masters are 4K. Where it doesn't, they're AI-upscaled until they look better than the disc ever did. The reference example: my Rick and Morty Season 1 is a 4K HDR upscale that beats the original broadcast. That's the standard for everything that lands here.
It's not a clone of a public streamer. It's the version I wished existed: the quality bar of a boutique release group, the polish of a flagship app, and a library I actually want to watch.
Detail page — full-bleed backdrop, ARRFLIX wordmark, Netflix-grade dark UI
Playback — Jellyfin chrome hidden, ARRFLIX-red scrubber + clean OSD
Search — pinned suggestions, ARRFLIX-red accents, no filler
What you get
- Best-quality everything. 4K where the source supports it, AI-upscaled masters where it doesn't. No 480p filler, no junk encodes.
- Curated, not crawled. Every title is hand-imported, hand-cleaned, and hand-checked before it goes live. Junk files, sample clips, and stray artwork never make it in.
- Polished metadata. Posters, backdrops, episode stills, cast, and descriptions are all locked to the canonical source — no wrong-show matches, no broken artwork, no foreign-language drift.
- English-first UI, every account. No surprise German Play buttons, no browser-locale roulette. Every user is pinned to a consistent experience.
- Custom theming. ARRFLIX wordmark, ARRFLIX-red accent (
#E50914), loading splash, and a Netflix-grade dark UI. Jellyfin's stock chrome is hidden — the brand is the surface. - Per-user home layouts. Resume, Next Up, and Latest Media tuned the way I actually use the app. No "My Media" tile clutter.
- Subtitles done right. Sidecar files named to spec, OpenSubtitles integration, ffmpeg-extracted tracks where embedded.
Live at
Endpoint is LAN / tailnet only. There is no public exposure — if you're not on the network, you're not getting in. By design.
How it works (technical)
ARRFLIX runs on self-hosted infrastructure on nullstone. The repo you're looking at is also the deploy source-of-truth: the compose file, library structure, theming overrides, and operational playbooks all live here. The streaming engine itself is unbranded plumbing — invisible behind the ARRFLIX surface.
Operators / future-me, the technical reference is split across:
ADMIN-GUIDE.md— single-page day-to-day ops: adding users, importing media, fixing scrapes, theme breakage, emergency rollback.ROADMAP.md— what's done, what's open, what's deferred.docs/— research-grade reference docs (artwork, metadata, subtitles, theming, file-structure rules, per-library themes, cleanup, filename normalization, force-English, branding leaks, splash, audits).
Repo lives at https://git.s8n.ru/s8n/ARRFLIX (mirror: https://flexhub.s8n.ru/s8n/ARRFLIX).
ARRFLIX — a one-person streaming service that punches above its weight.