Releases: jremick/moodarr
Release list
Moodarr v0.1.0-beta.1
Moodarr v0.1.0-beta.1
Moodarr's first public beta is an early, self-hosted release of the web/server app for Linux amd64. It helps Plex users find something to watch with natural-language mood search, local MoodRank scoring, Plex availability, and explicitly confirmed Seerr/Jellyseerr request attempts.
This is a beta, not the stable v1.0 release. Configuration, internal APIs, packaging, recommendation behavior, and Admin flows may still change between beta prereleases. The experimental iOS client is outside this release's supported surface.
Highlights
- Local-first Finder and MoodRank recommendation flows over Plex plus the optional pinned Wikidata catalog.
- Plex sign-in, item links, posters, and signed-in-user Watchlist actions with Admin-controlled capability defaults.
- Seerr/Jellyseerr request-state sync, non-writing previews, explicit confirmation, idempotent creation, and uncertain-outcome reconciliation.
- Redesigned Finder side rail and Admin navigation using Moodarr's Screening Desk design system.
- Exact-origin session protection with clearer recovery guidance for direct Unraid installs.
- Non-root, read-only, capability-dropped container defaults with bounded CPU, memory, PID, and temporary-storage limits.
- Hardened SQLite migrations, backup/restore guidance, catalog recovery, identity-conflict quarantine, and alpha.21 upgrade/cold-rollback validation.
- Provider-locked official image: recommendation processing remains local, OpenAI cannot be enabled, and the container does not call TMDB or ingest Seerr/TMDB descriptive content.
- Public supply-chain evidence: immutable OCI digest, SBOM, provenance, GitHub artifact attestation, anonymous pull proof, and exact-digest vulnerability scanning.
Install image
ghcr.io/jremick/moodarr:v0.1.0-beta.1
sha256:c1558d33b1e38c01d7d77171354464dd2b507fd6b84b353f2b0e11372ed73157
Record the resolved digest after pulling. For reproducible deployment and rollback, use the digest-qualified image shown above rather than a mutable reference.
- Docker and Compose setup
- Unraid setup
- Upgrade instructions
- Backup and recovery
- Compatibility boundary
Fresh Unraid installs must pre-create the private Appdata path as UID/GID 999:999 before selecting Apply. Set MOODARR_WEB_ORIGIN to the exact scheme, hostname or IP, and port browsers use.
Optional missing-title catalog
This prerelease includes the separate CC0 asset moodarr-wikidata-20260622-min5-v1.jsonl.gz:
SHA-256: dd25ba6602e1bdb8e6999b0442bc40165e6d4faadd02e91e74e1a24e2b55e85a
Records: 90,397
Request-attempt eligible: 82,865
Plex-only operation does not require this asset. Stop Moodarr and follow the networkless catalog import procedure; do not import while the server is running.
Important behavior and limitations
- Run Moodarr on a trusted LAN or VPN. Direct public-internet exposure is not supported.
- The official beta image is AI-off and provider-locked. Source/EXP OpenAI support is experimental and outside this release.
- Catalog-only request attempts remain visibly
unavailablewith Availability not checked until Seerr handles an explicitly confirmed attempt. - The official image uses Seerr only for operational request state and confirmed writes. It does not use Seerr or TMDB as a descriptive catalog source.
- Linux
arm64, Windows containers, Kubernetes, multi-replica operation, and stable third-party API compatibility are not supported in beta.1. - Read Data and privacy before enabling Plex user sign-in or Watchlist writes.
Please report problems through the bug report form and omit tokens, private URLs, media-library details, and raw support bundles from public issues.
Verified identity
- Source commit:
08447e87df2e1705aa9a79193a52a65fb00724c3 - OCI digest:
sha256:c1558d33b1e38c01d7d77171354464dd2b507fd6b84b353f2b0e11372ed73157 - Catalog SHA-256:
dd25ba6602e1bdb8e6999b0442bc40165e6d4faadd02e91e74e1a24e2b55e85a
See the full changelog for detailed implementation notes.
Moodarr v0.1.0-alpha.21
MoodRank trace-first release candidate
This prerelease supersedes v0.1.0-alpha.19 and v0.1.0-alpha.20.
Container images
ghcr.io/jremick/moodarr:v0.1.0-alpha.21ghcr.io/jremick/moodarr:sha-4ac3b7672cfa
What changed
- Adds the trace-first MoodRank foundation from alpha.19 with opt-in trace persistence, redacted review-queue prompt capture, result provenance, rejection rows, impression rows, and response diagnostics.
- Keeps trace writes disabled by default unless
MOODRANK_TRACE_WRITE=onis explicitly set for live validation windows. - Supersedes alpha.20 by treating plain
already availablewording as a Plex-available hard filter, not only phrases that explicitly sayin Plex. - Adds regression coverage from expanded live persona testing so already-available TV prompts cannot leak requestable or pending rows into the ranked window.
Verification
npm run verify:releasepassed locally on commit4ac3b7672cfa4402ef0105243fc67b341c789e59.npm audit --omit=devreported 0 vulnerabilities.- CI passed: https://github.com/jremick/moodarr/actions/runs/28725577311
- GHCR publish passed: https://github.com/jremick/moodarr/actions/runs/28725577811
- Live EXP read-back passed on
a private EXP endpoint/with imageghcr.io/jremick/moodarr:v0.1.0-alpha.21, healthok,MOODRANK_TRACE_WRITE=on, and revision4ac3b7672cfa4402ef0105243fc67b341c789e59. - Live paired AI-off/AI-on prompt pass covered the original seed prompts plus family rating, requestable, Plex-only, runtime, horror exclusion, and already-available TV cases: 20/20 HTTP 200, 0 hard-filter misses.
- Live trace DB snapshot passed
npm run eval:moodrank-traces -- --db-path /tmp/moodarr-alpha21-live.sqlite --min-traces 1 --sample-traces 5.
Notes
This is still an alpha prerelease. Keep Moodarr LAN/VPN-only, set MOODARR_ADMIN_TOKEN, keep /data private, and do not expose Plex/Seerr APIs publicly.
Moodarr v0.1.0-alpha.2
Changes
- Fixed bundled-container admin access by issuing an HTTP-only same-origin admin session from the container-side
MOODARR_ADMIN_TOKEN. - Removed the browser-local admin token storage flow from the bundled UI.
- Added configurable OpenAI reasoning effort through
OPENAI_REASONING_EFFORT, Admin settings, and persisted server config. - Defaulted GPT 5.5 reasoning effort to
low.
Container Image
ghcr.io/jremick/moodarr:v0.1.0-alpha.2ghcr.io/jremick/moodarr:sha-d3e3c8c959a8- Digest:
sha256:dda423d5ecd1941a48cc3c07ebfc0a938533b04b13816d53fdaa3e7f85491eec
Validation
- PR CI passed.
npm run verifypassed locally before release.
Moodarr v0.1.0-alpha.1
Initial alpha release for Moodarr, a local-first Plex + Seerr companion app for natural-language discovery and explicit request creation.
Highlights
- MoodRank v3 recommendation flow with deterministic retrieval, optional OpenAI parsing/reranking, feedback signals, and fixture-mode evaluation.
- Finder and Admin surfaces for search, filtering, runtime status, integration configuration, sync controls, and support diagnostics.
- Plex read-only integration plus Seerr/Jellyseerr read APIs and guarded request preview/create confirmation.
- Poster proxying, backend cache, token redaction, protected-route handling, and secret-safe generated client assets.
- Docker, Compose, and Unraid packaging scaffolding.
Verification
- GitHub Actions passed on
maincommit4de4e12e867eec32a686c5d35bbe8fcacaba9c1a. - The full CI gate ran lint, typecheck, tests, production build, client secret scan, recommendation evals, packaging checks, and Docker smoke.
- The GHCR image publish workflow passed and pushed a public linux/amd64 image.
- Local
npm audit --omit=devreported 0 vulnerabilities before release.
Container Image
ghcr.io/jremick/moodarr:v0.1.0-alpha.1ghcr.io/jremick/moodarr:sha-4de4e12e867e- Digest:
sha256:f258210f1e7147427668a54550f625b920190e3077e1dff4341f342aef482803
Notes
- This is an alpha prerelease. Expect rough edges around first-run setup, deeper TV-season selection, and advanced Seerr status reconciliation.