Releases: Maintainerr/Maintainerr
v3.0.1
v3.0.0
3.0.0 (2026-02-28)
Features
- add Jellyfin favorites support as rule property (#2393) (c4e4238)
- display total collection size in GB on dashboard cards (#2394) (77d85d5)
refactore
BREAKING CHANGES
- The DB migrations completed here are not backwards compatible with pre-3.0 versions of Maintainerr.
- Database schema updated to support multiple media servers.
This release is not backward compatible with pre-3.0 versions.
v2.27.0
2.27.0 (2026-02-21)
Information
- This will be the last 2.x release before Maintainerr 3.0 is released, with official and built in support for Jellyfin. There are major changes to Maintainerr in the upcoming 3.0 release. A preparation banner has been placed at the tops of your screens with a button to click for more information. If you have any issues/questions please reach out to us on Discord, or through a Github issue.
Bug Fixes
- correct syntax for conditional check in guard-manual.yml (40e4685)
- ui: open 3.0 prep modal directly from banner without navigation (#2388) (1e5241e)
Features
v2.26.1
v2.26.0
2.26.0 (2025-12-31)
Bug Fixes
- Correct path to database migrations (#2193) (abf52ba)
- Handle errors and improve log file retrieval in log stream (#2229) (0e88b37)
- Improve error handling when Plex returns error (#2236) (7f7943d)
- Rule importer should enforce library selection (#2177) (3d67915)
- Stop "Plex API isn't fully initialized" log at startup (#2188) (641de9e)
Features
v2.25.0
2.25.0 (2025-12-13)
Bug Fixes
- Handle zero Plex libraries in Overview (#2166) (947f55d)
- Rules for newly setup services not showing until refresh (#2147) (480e895)
Features
-
Add per-rule group execution (#2173) (430e3da)
You can now start & stop individual rule executions using Play & Stop buttons on the rule card:

-
Add rule handling schedules per rule (#2148) (137573a)
- If you've ever wanted to control the order of rule handling, you could space the crons a minute apart and they'll run in that order. Only 1 rule group is executed at a time, any others join a queue to be executed in a FIFO fashion.
-
Improve rule executor performance for larger libraries (#2174) (a6e1c55)
-
Reduce API requests for many Plex based rules for season & episode libraries (#2175) (0d30c7d)
-
Reduce API requests for many Sonarr based rules for season & episode libraries (#2176) (4a07258)
v2.24.0
v2.23.0
2.23.0 (2025-12-06)
Bug Fixes
- Hide *arr rules until server is selected (#2109) (6e8b456)
- Improve error handling for read-only filesystem in UI path rewriting (#2105) (d72e5b3)
- Stop music being returned in search (#2107) (aecdabe)
Features
-
Make 'Has series finale episode' available at show level (#2127) (9bd9cdd)
-
Migrate UI from Next.js to Vite + React Router (#2100) (a9474d4)
- There are now URLs for "deep" pages, e.g.
/rules/new,/rules/edit/2,/collections/1/exclusions. This also makes the sidebar more usable as before you could not navigate back to the overviews (#491). The links will also stay 'active' when going to the deeper pages. - Page titles! Maintainerr now goes at the end, and every page should now have a good title.
- No more janky navigations when trying to force the user onto
/settings/plexto do first setup.
- There are now URLs for "deep" pages, e.g.
v2.22.1
v2.22.0
2.22.0 (2025-11-29)
Reminder: ghcr.io image name change
You'll need to update your image references from ghcr.io/jorenn92/maintainerr to ghcr.io/maintainerr/maintainerr to keep getting updates. This is due to us moving the repository to an organisation. This will be the last reminder.
Bug Fixes
- BASE_PATH support (#2052) (f0a2410)
- Improve language for rule options & hide irrelevant ones (#2097) (91f3173)
- Radarr import list exclusions missing for unmonitor actions (#2098) (05bd94c)
- Rule Group Active input not linked to label (#2101) (95196f4)
Features
- Serve UI statically from API (#2044) (dbd93fc)
- Potential breaking change: API_PORT environment variable removed — NestJS now serves both the UI and API on UI_PORT. If you previously called the API by connecting directly to the old API port, update your clients/scripts to use the UI server (UI_PORT) and /api/... endpoints instead.