Sign inSign up

trulytilted/mixerbee

By trulytilted

•Updated about 6 hours ago

Smart playlist and collection builder for Emby and Jellyfin. Self-hosted, browser-based UI.

Image
Languages & frameworks
Web servers
Content management system
1

10K+

trulytilted/mixerbee repository overview

⁠MixerBee

MixerBee is a self-hosted web app for building and managing playlists and collections on Emby and Jellyfin.

Interleave episodes from multiple TV shows, create themed movie marathons, build music playlists, or mix them together. Save your favorite configurations and schedule automatic rebuilds as your library and watch history change.

AI is optional. The Builder, scheduling, management tools, and local similarity search work without an AI provider.

⁠Multiple Users, Multiple Servers

  • Household accounts: Separate MixerBee logins with private workspaces. The installation owner can create and remove household accounts.
  • Multiple connections: Save and switch between Emby and Jellyfin servers or media-user accounts.
  • Independent settings: Each connection has its own presets, schedules, library cache, search index, and AI configuration.
  • Permission-aware controls: Normal media users can manage their playlists where permitted. Modifying collections requires media-server administrator access.

⁠Build Your Mix

Combine blocks into a playlist and play them sequentially or interleave them:

  • TV: Choose shows, start from specific episodes, or continue with the next unwatched episodes.
  • Movies: Filter by genre, year, cast and crew, studio, watch status, favorites, ratings, runtime, and audio or subtitle language.
  • Music: Select albums, artist tracks, or genre-based selections.
  • Curated: Combine hand-picked movies with TV episode rules.
  • Echo: Discover similar titles using seed movies or shows and your local library index.
  • AI Vibe: Find selections based on themes, moods, and descriptive prompts.

Use Mix Rules to avoid recent repeats, control duplicates, limit movies per franchise, customize sequencing, and set a runtime target. Preview selections, undo edits, save complete presets, or keep individual blocks as reusable recipes.

⁠Automation and Management

  • Schedules: Run daily, weekly, or at an interval, with pause, resume, snooze, and manual-run controls.
  • Webhook updates: Rebuild scheduled lists after relevant playback or library events.
  • Auto Playlists: Generate Recently Added, Next Up, Pilot Sampler, top-rated movie lists, Artist Spotlight, Music Genre Sampler, Album Roulette, and more.
  • Manager: Browse, search, reorder, and remove items; bulk-delete lists; check overlaps; and open lists directly in your media server.
  • Build history: Review past builds, compare selections, and recreate an earlier selection as a new playlist.
  • Administration: Connection-specific external API keys, owner API backup/restore, and an in-app live log viewer.

⁠Optional AI Tools

Connect Ollama for local AI or Google Gemini for cloud AI.

  • AI Builder: Describe what you want, generate editable rule blocks or curated selections, and refine them with follow-up requests.
  • Playlist Assist: Build and adjust a movie playlist through conversation. Pin movies you want to keep, remove selections, undo changes, and save the result.
  • Metadata enrichment: Generate mood tags to improve semantic matching, with manual and scheduled processing.

Library embeddings and similarity searches run locally using ChromaDB. When using Gemini, prompts and relevant library metadata may be sent to Google for AI processing.

AI stays off until configured and can also be disabled across an entire MixerBee account. Echo blocks and local semantic search remain available.

⁠Quick Start

Mount a persistent directory at /config to retain accounts, connections, presets, schedules, and search indexes.

⁠Docker CLI
docker run -d \
  --name mixerbee \
  -p 9000:9000 \
  -v "$(pwd)/mixerbee_config:/config" \
  --restart unless-stopped \
  trulytilted/mixerbee:latest
⁠Docker Compose
services:
  mixerbee:
    image: trulytilted/mixerbee:latest
    container_name: mixerbee
    ports:
      - "9000:9000"
    volumes:
      - ./mixerbee_config:/config
    restart: unless-stopped

Start with:

docker compose up -d
⁠Initial Setup
  1. Open http://your-server-ip:9000⁠.
  2. Create your local MixerBee account. The first account becomes the installation owner.
  3. Select Add connection and enter your Emby or Jellyfin server URL and credentials.
  4. Optionally create household accounts under Account settings.
  5. To enable AI, configure Ollama or Gemini in the AI Hub for the selected connection.

Use addresses reachable from inside the container. localhost refers to the MixerBee container itself.

⁠Webhook Synchronization

Webhooks automatically rebuild lists configured in the Scheduler when relevant media-server events occur.

  1. Open Connection settings → Integrations and generate a webhook secret.
  2. Copy the complete connection-specific webhook URL.
  3. Configure that URL in your media server’s webhook settings.
  4. Enable the desired playback and library triggers for your schedules.

Each connection uses its own URL and secret. Webhooks apply to scheduled builds; one-off Builder output is unaffected.

⁠Upgrading from a Single-Connection Version

Back up the complete configuration directory and save important browser drafts as presets before upgrading.

After updating, create the local owner account, review migrated connections, presets, and schedules, and replace old webhook URLs. The shared /api/webhook endpoint has been retired. Unmatched schedules remain inactive, and connection-specific search indexes may take time to rebuild.

⁠Documentation and Support

Visit the MixerBee GitHub repository⁠ for setup guides, screenshots, usage documentation, and issue reporting.

Tag summary

Content type

Image

Digest

sha256:35d5da8ee…

Size

528.2 MB

Last updated

about 6 hours ago

docker pull trulytilted/mixerbee