Jump to content

Built a tool to organize my movie library into 13 browsable categories


Recommended Posts

Posted

As my library grew, I started to the Netflix problem: ~1900 films in one giant Movies folder and finding something to watch meant scrolling forever past stuff I wasn't in the mood for. I tried genre-based organization, didn't work. Tried decade-based, didn't work. What actually works for how my wife, and I pick films is mood + intent: are we doing date night, demo night, comfort rewatch, or "block out three hours for an Event"?

So, I built a PowerShell pipeline that classifies my library into 13 mood/intent-based categories and reorganizes the folder structure for me. After running the result for a few weeks, I'm happy enough with how it works that I figured I'd share in case anyone else has the same problem.

What it does: 

  • Pulls metadata from TMDb and OMDb for each film
  • Optionally probes file format with MediaInfo CLI (so it knows what's actually 4K vs. just-named-4K)
  •  Routes each film into one of 13 categories using a "filter-first" approach:
    •  organizational categories like Christmas, Animated, 4K Masters, and Streaming are decided deterministically; the rest compete on a weighted scoring system
  • Plans (and optionally executes) file moves so Emby can present the result as separate libraries per category
  • Optionally consults Claude (via Anthropic's API) for ambiguous calls
    • off by default, costs about a dollar per run if you turn it on

The 13 categories:

4K Masters · Animated · Blockbusters · Christmas · Date Night · Event ·
Horror · Independent · Midnight · Prestige · Serious · Streaming · Studio

Each has a specific definition based on browsing intent. For example:

  • Blockbusters = scene-startable comfort rewatches (Back to the Future, Mission Impossible)
  • Event = long-runtime spectacle requiring full-attention commitment (Lawrence of Arabia, Lord of the Rings)
  • 4K Masters = curated demo discs you'd showcase, NOT just "anything I own in 4K format" — the curation is yours, manually maintained in a CSV
  • Midnight = DTV / B-movies / cult curiosities — different from Horror (which is genuine theatrical horror)

Setup requirements:

  • Windows with PowerShell 7+
  • Emby with a movies library
  • Free TMDb and OMDb API keys
  • Optional: MediaInfo CLI, Anthropic API key

Setup walkthrough is in the README. Briefly: extract the zip, drop your API keys in a config file, edit one JSON config to point at your library paths, export your library from Emby as a CSV, run the pipeline. First run is "plan only" — file moves are off by default until you've reviewed the proposed sort.

Caveats:

  • This is built around how my brain organizes films, not a universal taxonomy. The "Event vs. Blockbusters" line, the "Horror vs. Midnight" line — these are my judgment calls and yours may differ. The system supports per-film overrides for exactly this reason.
  • It assumes Emby + a NAS-backed library. The path-handling logic is Windows-centric. Adapting to Plex or Linux is possible, but I haven't done it.
  • The included calibration set has ~25 universally agreed films just to show the format. Your actual taste calibration is up to you.
  • It's PowerShell. If you're not comfortable in PS, the setup may take more effort.

 If anyone has a similar setup and wants to swap notes on how they organize their libraries, I love to hear you handle your library

EmbyLibraryCurator.zip

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...