Damn it's 2026 and we're so back!
This is a meaty release with a lot of backend and frontend changes I will likely have to ship a hotfix for once bugs inevitably pop up in it.
It's also potentially... the last release being offered on GitHub! I'm evaluating escape hatches from Microsoft bullshit and I would recommend you join the Discord to follow up on the news.
(Or at least keep https://tvc-16.science in a tab somewhere, I'm not a fan of gatekeeping info to Discord servers and I'll likely make a blog post if anything happens)
aight thats enough doomerism on to the
Release Notes
π Chapter functionality is now available! (#879, @EfronC )
You can now split individual archives into multiple Chapters -- Convenient if you have large books and want the thumbnail overview to not be 3 kilometers long.
This functionality lives under api/archives/toc for clients.
Adding chapters to books is a manual only process for now, which can be done through the thumbnail overview. I'd like to add capability for metadata plugins to declare chapters in the future.
ok but what about putting multiple archives in a single book i have my best folks on the case, soonβ’οΈ
β The LRR API now follows an OpenAPI spec (#1448, @psilabs-dev )
An OpenAPI spec is now available here for the API.
This makes it easier to write clients, as the behavior is now documented following... best practices and stuff! wow!
The API docs have also been substantially improved to follow said spec, with much more detailed parameters and examples.
It's also possible to directly try out the API against the demo at lrr.tvc-16.science from the docs.
An aside for API client devs
The API will eventually rely on the spec to perform validation, by auto-rejecting requests that don't comply with the spec alongside explicit error messages. This functionality is disabled for the time being since I don't want to break clients without any prior warning, but it'll likely be enabled by default for new installs in the next release.
You can test your client with validation today (not tomorrow! today!) by turning off this new toggle in settings:
π Prometheus Metrics integration (#1301, @psilabs-dev )
If you're already hoarding manga, you might also want to hoard...numbers?
LRR now supports exposing server metrics for the Grafana/Prometheus in your homelab through the new /api/info/metrics endpoint.
See here for more information.
π€ Other changes
-
π§βπ¨ Custom CSS files can now be added again
You could still drop your own csses in /public/theme, but the last changes made to theme selection to allow for previewing the themes made it impossible to select your custom themes. Not anymore!

This also still works with previews, so you can test your custom css right in settings before applying it across the server. -
π °οΈ Language can now be configured in Settings (#1278 , @gustaavv)
You can now set a fixed override for the server's language instead of having it use the browser's language preference. I won't judge you for not wanting to read manga in your native language, I get it...
-
π¨ Implement excluded namespace logic (#1404, @psilabs-dev)
date_addedused to be explicitly excluded from suggestions and tag clouds, but this wasn't a user-configurable preference. It's now possible to set the excluded namespaces yourself in Settings->Tags and Thumbnails. -
β Add ratings section to reader overlay (#1424, @fancydancers)
You might have spotted this already in the SICP screenshot above -- There's now a dedicated UI for setting
rating:tags on your Archives directly from the Reader. -
πΌοΈ Make progress div independent from new/completed emojis in thumbnail view
Small QoL change following a user request to make page count and progression always visible, even if you've completed a book.
-
π§ Add option to only save server-side progress if authenticated (#1398, @jacobgkau)
This is a bit niche, but useful if you want to sync your personal progress across devices on a public instance, but don't want guests or scrapers changing your progress.
-
π Allow the user to configure the Regex used by RegexParse (#1434, @alethiophile)
The default regex that the server can apply to derive metadata from filenames works for most doujinshi, but isn't necessarily a good fit for regular manga or other books. Have fun writing regular expressions!
-
π Fix namespace sorting behavior with untagged archives (#1299, @psilabs-dev)
Previously, sorting by a namespace would put archives without that namespace at the front of the results instead of the back, causing a bunch of noise. This is now #fixed #wow
-
Add a "read archive" shortcut to the Edit Metadata page (#1408, @fancydancers)
The more QoL you have the better!
-
Miscellaneous bugfixes and improvements
π (#1399) Fix slideshow not respecting manga mode
π Add support for Redis connections through unix socket (#1465, @Wiichele)
π Use fetch for image preloading to fix Safari behavior (#1477, @Guerra24)
π Implement log rotation (#1405, @psilabs-dev)
π Allow right-click context-menu on entire row in compact mode (#1409, @anon-watcher)
π Adjust handlePaste so that it can append the pasted text to an existing pending tag (#1440, @steve1316 + @psilabs-dev)
π Allow disabling preloading (#1390, @siliconfeces)
π Fix junction and symbolic links not working in Windows (#1387, @Guerra24)
π Make building the archive overlay less CPU heavy for huge archives (#1392, @siliconfeces)
π Speed up pages by not iterating over entire archive (#1393, @siliconfeces)
π Don't initialize archive overlay immediately to save CPU on huge archives (#1395, @siliconfeces)
π Log more information on archive read failure (#1389, @psilabs-dev)
π Add a "read archive" shortcut to the Edit Metadata page (#1408, @fancydancers)
π Reset slideshow timer on manual page changes (#1421, @psilabs-dev)
π Fix additional issues with path handling on Win32 (#1419, @Guerra24)
π Fix get_filelist error handling and add tests (#1422, @psilabs-dev)
π Add Redis locking to various API endpoints that handle archive IDs
π Fix stat zincrs not being Redis-encoded
π Avoid error toast when server-side progress API returns 423. (#1451, @siliconfeces)
π Hide fullscreen toggle on Safari (#1463, @psilabs-dev)
π Remove wsl.conf from Dockerfiles
π Updated the localization files -
API Changes
π Add extra PUT call to restore New flag on given IDs
π Added/api/archives/:id/tocto handle Chapters
π Removed/api/archives/:id/extractin favor of/api/archives/:id/files
π Allow include_full_data in Api::Tankoubon::get_tankoubon to be a boolean or an int
π Relaxisnewreturn value type to bool or string or null
π Add/api/info/metricsto serve Prometheus metrics if enabled
π Addauthenticated_progressandexcluded_namespacesto/api/info
Full Changelog: v.0.9.60...v.0.9.70
βWe cannot turn back. We cannot choose the dreams of unknowing,β Steiner concluded. Instead, one should enjoy the fact that βit is enormously interesting to be alive at this cruel, late stage in Western affairsβ¦It may well be that our post-culture will be marked by a readiness to endure rather than curtail the risks of thought.β [...]
Why the long digression about Steiner and the death of Western civilization in an entry about a Bowie rock song? Well, itβs Bowieβs fault. He named In Bluebeardβs Castle one of his top 100 books, and in interviews for Reality, he kept bringing up Steiner to frame what he intended with the title track.