Home

Awesome

Jellyfin Cover Manager

This Python-based application is designed to automate the management and organization of media cover art, posters, and fanart for your Jellyfin libraries. It helps maintain a clean and consistent media artwork structure by processing, organizing, and managing cover images for movies, TV shows, and collections.

Features

Prerequisites

Installation

Docker Installation (Recommended)

  1. Create a docker-compose.yml:
services:
  jellyfinupdateposter:
    image: iceshadow/jellyfinupdateposter:latest
    environment:
      - JELLYFIN_URL=http://jellyfin:8096
      - JELLYFIN_API_KEY=your-jellyfin-api-key
      - TMDB_API_KEY=your-tmdb-api-key
      - INCLUDE_EPISODES=false
      - TZ=Europe/Berlin
      - enable_webhook=false
    volumes:
      - ./your-local-path:/mount
    ports:
      - 8080:8080
    restart: unless-stopped
    command: "--force"

Local Installation

  1. Clone the repository:
git clone https://github.com/Iceshadow1404/JellyfinUpdatePoster
cd JellyfinUpdatePoster
  1. Install required dependencies:
pip install -r requirements.txt

Configuration

Using Environment Variables

Create a .env file in the root directory:

JELLYFIN_URL=http://your-jellyfin-server:8096
JELLYFIN_API_KEY=your-jellyfin-api-key
TMDB_API_KEY=your-tmdb-api-key
INCLUDE_EPISODES=false
enable_webhook=false

Required configuration variables:

Directory Structure

The application creates and manages the following directory structure:

├── RawCover/            # Drop your cover images here
├── Cover/               # Processed cover images
│   ├── Poster/          # Movie and TV show posters
│   ├── Collections/     # Collection artwork
│   └── No-Match/        # Unmatched artwork
├── Consumed/            # Processed source files
├── Replaced/            # Archived replaced artwork

File Naming Conventions

The application supports various file naming patterns:

Usage

Using Docker (Recommended)

Start the container:

docker compose up

Drop your image or .zip files into the RawCover folder.

Running Locally

Run the main script:

python main.py

For a force update:

python main.py --force

Drop your image or .zip files into the RawCover folder.

Features in Detail

Multi-Language Support

Content Change Detection

Image Management

Webhook Integration

Mediux Downloader

Contact

License

This project is licensed under the MIT License - see the LICENSE file for details.