|
| 1 | +<div align="center"> |
| 2 | + <img |
| 3 | + src="https://raw.githubusercontent.com/LizardByte/Themerr-jellyfin/refs/heads/master/themerr.png" |
| 4 | + alt="Themerr icon" |
| 5 | + width="256" |
| 6 | + /> |
| 7 | + <h1 align="center">Themerr-jellyfin</h1> |
| 8 | + <h4 align="center">Jellyfin theme song plugin using ThemerrDB.</h4> |
| 9 | +</div> |
| 10 | + |
| 11 | +<div align="center"> |
| 12 | + <a href="https://github.com/LizardByte/Themerr-jellyfin/actions/workflows/ci.yml?query=branch%3Amaster"><img src="https://img.shields.io/github/actions/workflow/status/lizardbyte/Themerr-jellyfin/ci.yml.svg?branch=master&label=build&logo=github&style=for-the-badge" alt="GitHub Workflow Status"></a> |
| 13 | + <a href="https://github.com/LizardByte/Themerr-jellyfin/releases/latest"><img src="https://img.shields.io/github/downloads/lizardbyte/Themerr-jellyfin/total.svg?style=for-the-badge&logo=github" alt="GitHub Releases"></a> |
| 14 | + <a href="https://hub.docker.com/r/lizardbyte/themerr-jellyfin"><img src="https://img.shields.io/docker/pulls/lizardbyte/themerr-jellyfin.svg?style=for-the-badge&logo=docker" alt="Docker"></a> |
| 15 | + <a href="https://codecov.io/gh/LizardByte/Themerr-jellyfin"><img src="https://img.shields.io/endpoint.svg?url=https%3A%2F%2Fapp.lizardbyte.dev%2Fdashboard%2Fshields%2Fcodecov%2FThemerr-jellyfin.json&style=for-the-badge&logo=codecov" alt="Codecov"></a> |
| 16 | + <a href="https://sonarcloud.io/project/overview?id=LizardByte_Themerr-jellyfin"><img src="https://img.shields.io/sonar/quality_gate/LizardByte_Themerr-jellyfin.svg?server=https%3A%2F%2Fsonarcloud.io&style=for-the-badge&logo=sonarqubecloud&label=sonarcloud" alt="SonarCloud"></a> |
| 17 | +</div> |
| 18 | + |
| 19 | +## ℹ️ About |
| 20 | + |
| 21 | +Themerr-jellyfin connects Jellyfin to [ThemerrDB](https://github.com/LizardByte/ThemerrDB), a community-maintained |
| 22 | +database of theme songs. It downloads matching themes for movies and TV shows in your library, keeps Themerr-provided |
| 23 | +themes up to date, and leaves user-provided `theme.mp3` files untouched. |
| 24 | + |
| 25 | +LizardByte has the full documentation hosted on [Read the Docs](http://themerr-jellyfin.readthedocs.io/). |
| 26 | + |
| 27 | +## 📦 Installation |
| 28 | + |
| 29 | +The recommended installation method is to add the LizardByte plugin repository to Jellyfin. See the |
| 30 | +[Jellyfin plugin documentation](https://jellyfin.org/docs/general/server/plugins/) for additional information about |
| 31 | +installing plugins. |
| 32 | + |
| 33 | +1. In Jellyfin, navigate to **Dashboard → Plugins → Repositories**. |
| 34 | +2. Add a repository using this URL: |
| 35 | + |
| 36 | + ```text |
| 37 | + https://app.lizardbyte.dev/jellyfin-plugin-repo/manifest.json |
| 38 | + ``` |
| 39 | + |
| 40 | +3. Open the plugin **Catalog** and search for `Themerr`. |
| 41 | +4. Select and install the plugin. |
| 42 | +5. Restart Jellyfin. |
| 43 | + |
| 44 | +Other installation methods are also available: |
| 45 | + |
| 46 | +- **Portable:** Download `themerr-jellyfin.zip` from the |
| 47 | + [latest release](https://github.com/LizardByte/Themerr-jellyfin/releases/latest), extract it to your Jellyfin plugins |
| 48 | + directory, and restart Jellyfin. The portable archive supports Linux, macOS, and Windows. |
| 49 | +- **Docker:** The images on [Docker Hub](https://hub.docker.com/repository/docker/lizardbyte/themerr-jellyfin) and |
| 50 | + [GitHub Container Registry](https://github.com/orgs/LizardByte/packages?repo_name=themerr-jellyfin) provide a |
| 51 | + LinuxServer.io Docker mod, not a standalone container. See the |
| 52 | + [Docker documentation](https://themerr-jellyfin.readthedocs.io/en/latest/about/docker.html) for configuration. |
| 53 | +- **Source:** Installing from source is not recommended for most users. See the |
| 54 | + [build documentation](https://themerr-jellyfin.readthedocs.io/en/latest/contributing/build.html), then extract the |
| 55 | + generated zip archive to your Jellyfin plugins directory and restart Jellyfin. |
| 56 | + |
| 57 | +## 🚀 Quick Start |
| 58 | + |
| 59 | +1. In your Jellyfin user settings, select **Display**, then enable **Theme songs** in the **Library** section. |
| 60 | +2. Ensure each movie and TV show is stored in its own directory. See Jellyfin's documentation for |
| 61 | + [movies](https://jellyfin.org/docs/general/server/media/movies/) and |
| 62 | + [TV shows](https://jellyfin.org/docs/general/server/media/shows/) for the required directory structure. |
| 63 | +3. Open the Themerr [configuration page](http://localhost:8096/web/index.html#!/configurationpage?name=Themerr) and |
| 64 | + select **Update Theme Songs**. Alternatively, open Jellyfin's **Scheduled Tasks** page and select |
| 65 | + **Update Theme Songs** under **Themerr**. |
| 66 | + |
| 67 | +After the initial run, Themerr runs automatically according to the schedule configured on its configuration page. |
| 68 | + |
| 69 | +## 🛠️ Getting Help |
| 70 | + |
| 71 | +Themerr messages are written to the Jellyfin server logs because Jellyfin does not maintain separate logs for plugins. |
| 72 | +See the [Jellyfin log documentation](https://jellyfin.org/docs/general/administration/configuration#log-directory) to |
| 73 | +locate them. Review logs for sensitive information before sharing them because Themerr does not control other |
| 74 | +information logged by the Jellyfin server. |
| 75 | + |
| 76 | +If you still need help, visit the [LizardByte Support Center](https://app.lizardbyte.dev/support). |
| 77 | + |
| 78 | +## 🤝 Contributing |
| 79 | + |
| 80 | +- Contribute themes through the [ThemerrDB repository](https://github.com/LizardByte/ThemerrDB). |
| 81 | +- Contribute translations through [CrowdIn](https://translate.lizardbyte.dev/). |
| 82 | +- For code contributions, see the [build](https://themerr-jellyfin.readthedocs.io/en/latest/contributing/build.html) and |
| 83 | + [testing](https://themerr-jellyfin.readthedocs.io/en/latest/contributing/testing.html) documentation. |
0 commit comments