Skip to content

Themearr/themearr

Repository files navigation

Themearr

Automatic movie theme song downloader for Plex libraries.

Releases · Proxmox Scripts


What it does

Themearr signs in with your Plex account, reads your movie libraries, and helps you add a theme.mp3 to every movie folder — the file Plex uses to play background music while browsing.

  • Browse your full Plex library as a poster grid
  • Auto-search YouTube for each movie's theme
  • One-click download to theme.mp3
  • Paste any video URL to use a custom source
  • Downloaded status tracked per movie

Downloads require a RapidAPI key

Theme audio is fetched through the youtube-mp36 API on RapidAPI. Downloads will not work until you add your RapidAPI key and username in Settings → RapidAPI. Plex sign-in and library browsing work without it — only downloading a theme.mp3 needs it. The free RapidAPI tier is quota-limited, so Themearr backs off automatically when the quota is exhausted.

One-line Proxmox LXC install

Run this on your Proxmox host:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/Themearr/ProxmoxVE/main/ct/themearr.sh)"

After the container is created, open http://<container-ip>:8080 and sign in with Plex.

Tech stack

Layer Technology
API .NET 9 Web API (ASP.NET Core)
Frontend Next.js 16 (static export, served by .NET)
Database SQLite via Microsoft.Data.Sqlite
YouTube search YoutubeExplode
Theme download youtube-mp36 RapidAPI

Local development

Requirements

Run

# Terminal 1 — API
dotnet run --project src/Themearr.API

# Terminal 2 — Frontend (dev server with proxy to API)
cd src/Themearr.Web
npm install
NEXT_PUBLIC_API_URL=http://localhost:5000 npm run dev

Open http://localhost:3000.

Building a release

Push to main — GitHub Actions will automatically:

  1. Detect the semver bump from commit messages (feat: → minor, major: → major, else patch)
  2. Build the Next.js frontend (npm run build)
  3. Publish .NET for linux-x64 and linux-arm64
  4. Bundle the frontend into each publish output
  5. Create a GitHub release with both tarballs attached

Updating

Themearr includes an in-app updater (Settings → Updates). It downloads the latest release tarball, preserves your data, and restarts the service. You can also update from the Proxmox web UI.

Versioning

Releases follow semantic versioning driven by commit message prefixes:

Prefix Bump
feat: minor
major: / BREAKING CHANGE major
anything else patch

License

MIT

About

Themearr helps you add a theme.mp3 file to each movie folder in your library. It signs in with Plex, reads your Plex movie library, and uses the media file paths Plex already knows about.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors