# Project pack: Jellyfin @ c7ce6a1 Facts about **Jellyfin** for an AI following the [BespokeAI handover guide](https://handoff.bespokeai.software/guide/v4.md). Pinned to one version; never changes after publication. > Jellyfin turns a folder of films, TV series, music and home videos into a streaming service for your household. It finds posters, descriptions and cast details for you, remembers where everyone stopped watching, and plays on phones, smart TVs, games consoles and web browsers. It is completely free, with no paid tier, no adverts and no account with a company. ## Setup path (checked 2026-11-03) - **Start here, no Docker:** Install the project's own desktop app or installer. No Docker. - Offer Docker only if the person asks or this path fails. The commands further down may use Docker; they are not the starting point. - Verdict source: https://jellyfin.org/docs/ - You may be unable to download source archives or run commands in this session. The person downloads and runs things; if you cannot fetch something, give any changed file in full in chat with its path. ## Version and source - Repository: https://github.com/jellyfin/jellyfin - Pinned commit: `c7ce6a1b56ee7dcc1896250df0f2f9deaa828a81`. Use exactly this version. - Zip the person can download in a browser: https://github.com/jellyfin/jellyfin/archive/c7ce6a1b56ee7dcc1896250df0f2f9deaa828a81.zip - Fresh checkout (only if you have a shell and git): use the commands below in an empty folder. If this exact source is already checked out, keep your branch and use the development command; do not clone again or reset local changes. - Official docs: https://jellyfin.org/docs/ - Live demo: https://demo.jellyfin.org/stable. Official shared demo linked from jellyfin.org. The login details are shown on its login page. - Licence: **GPL-2.0-only**. Free to use and change. If you give copies of the program (changed or not) to other people, you must share the source code under the same licence. Running it for your household, or for friends over the internet, has no extra obligations. (The repository's LICENSE is GPL version 2; some library packages are labelled GPL-3.0.) ## Commands from the pinned source - Developer commands (they may use Docker): ```sh git clone https://github.com/jellyfin/jellyfin bespoke-jellyfin cd bespoke-jellyfin git checkout --detach c7ce6a1b56ee7dcc1896250df0f2f9deaa828a81 # Prepare development requirements and local configuration first. # Setup notes: http://localhost:8096; or use --nowebclient and run jellyfin-web separately dotnet run --project Jellyfin.Server --webdir /absolute/path/to/jellyfin-web/dist ``` - Separate trial of the current upstream release (not your changes; sample data and a separate data directory only): ```sh docker run -d --name jellyfin -p 8096:8096/tcp -p 7359:7359/udp -v jellyfin-config:/config -v jellyfin-cache:/cache --mount type=bind,source=/path/to/media,target=/media --restart=unless-stopped jellyfin/jellyfin # then open http://localhost:8096 and follow the setup wizard (language, admin account, media folders) ``` - Tools these commands use: Docker on Linux (the docs recommend native installers on Windows and macOS), or the native packages, Enough CPU or a supported GPU if you need to convert video on the fly, For server development, the .NET 10 SDK and jellyfin-ffmpeg, plus a build of jellyfin-web - Develop: `dotnet run --project Jellyfin.Server --webdir /absolute/path/to/jellyfin-web/dist # http://localhost:8096; or use --nowebclient and run jellyfin-web separately` - Test: `dotnet test Jellyfin.sln` - Check/lint: `dotnet format --verify-no-changes --verbosity minimal` - Build: `dotnet build` - Stack: csharp (.NET 10, ASP.NET Core, Entity Framework Core, FFmpeg). Difficulty for a non-developer with an AI: **advanced**. This repository is only the server: a large .NET solution (about 2,600 files) covering the API, library scanning, metadata and FFmpeg transcoding. The web interface people see is a separate project, jellyfin/jellyfin-web (JavaScript/TypeScript), and the TV and phone apps are separate again. Most personal changes are settings, custom CSS, web config or plugins; real code changes need .NET skills and usually the web client too. - The project's own AI instructions, in the repository: `.github/pull_request_template.md`. Personal data: **yes**. Stored in: Your media files stay where they are (mounted read-only is fine). Users, watch history, settings and the library database live in the config and data folders (/config in Docker); artwork and transcodes in /cache. Secrets are entered by the person, never in chat. --- Later, only when a step needs it: [reference.md](https://handoff.bespokeai.software/p/jellyfin/c7ce6a1/r3/reference.md) (customisation points, must-keep-working, data and costs, coding conventions) · [hosting.md](https://handoff.bespokeai.software/p/jellyfin/c7ce6a1/r3/hosting.md) (long-term hosting; hosts are paid third parties) · [bespoke.yaml](https://handoff.bespokeai.software/p/jellyfin/c7ce6a1/r3/bespoke.yaml) · [SKILL.md](https://handoff.bespokeai.software/p/jellyfin/c7ce6a1/r3/SKILL.md)