As a hardcore data hoarder, I prefer storing my media files locally instead of relying on online platforms. Thankfully, the home lab ecosystem has dozens of applications that make managing, archiving, and browsing my painstakingly-collected digital library a lot easier. There’s Jellyfin (and Plex too, I guess) for my TV shows and movies, while RomM organizes my collection of retro game files and Immich takes care of all the images I’ve captured over the years.
But aside from these chunky files, I’ve also got thousands of ebooks that, despite occupying a fraction of the size as my movie collection, remain a massive pain to manage. Fortunately, I ran into Calibre-Web during my days as a fledgling home labber, and it quickly became the centerpiece of my bibliophile setup.
This free, self-hosted app is basically Jellyfin for comics and books, and I absolutely love it
Kavita is hands-down the best self-hosted utility for comic book lovers
Calibre-Web is the self-hosted antidote to my ebook management woes
It hides several file organization tools under that neat web UI
Truth be told, as someone who isn't too fond of outdated UI on the desktop-based Calibre application, I was a bit wary of using Calibre-Web when I first deployed the app. However, Calibre-Web’s UI looks a lot more modern compared to its desktop-only version, and it packs plenty of ebook organization tools to avoid turning my digital library into a mess. For starters, Calibre-Web analyzes the metadata as soon as I upload a new ebook, and this includes everything from the cover image and description to its unique identification number(s) and other publishing details. Plus, I can fill in missing metadata fields and insert tags and series IDs to make my ebooks easier to find.
Calibre-Web also lets me segregate ebooks of different genres into shelves, where I can rearrange, share, and download them en masse. I’ve even created dedicated user profiles for the other book-loving denizens of my household, so we don’t end up mixing our ebook collections. Another neat aspect of Calibre-Web is that it can detect books with similar metadata during the initial upload process, and it has saved me from adding duplicates countless times. Its search functionality is also pretty detailed, and I can filter ebooks using tags, publishing dates, read status, and several other fields. Calibre-Web even lets me mark the books I’ve binged, and I can archive them to avoid users from accidentally deleting them. While we’re on this subject…
Its built-in reader and OPDS feed support are just handy
Rather than forcing me to download a dedicated application to read my archived digital media, Calibre-Web has an ebook reader built into it – one that supports .txt, .epub, and .pdf files natively. On paper, that might seem somewhat restrictive, but Calibre-Web itself supports dozens of ebook formats. And once I combine Calibre-Web with a self-hosted BentoPDF container, a document editor that lets me convert different formats to good ol’ .pdf, I can binge read most of my library directly from Calibre-Web’s UI. Plus, since Calibre-Web is a browser-based tool, I can access my ebooks from practically any device in my home lab.
Better yet, Calibre-Web supports OPDS clients, making it fairly accessible to my family members who prefer conventional Android applications over a web-based interface. With a little help from send2reader, I can even toss ebooks from Calibre-Web to Kobo and Kindle devices.
5 relatively obscure self-hosted apps I’d use if I were to go back to school
These services may not be very popular, but they're fantastic companions for the new school year
I’ve used Proxmox to deploy my Calibre-Web instance
Transferring the metadata.db file took a little bit of effort, though
When I first heard about Calibre-Web, my first instinct was to configure it on my TrueNAS storage rig, as my ebooks still occupy a few dozen GBs. But after constantly running into write permission issues while setting up the library dataset for the ebook management service, I decided to ditch my dreams of a NAS-powered Calibre-Web and switched to a Docker container running inside a VM on my Proxmox home server.
But as you’d expect, I ended up running out of space on my VM, and my virtualization experiments didn’t help on the resource consumption front, either. So, I migrated my Calibre-Web setup to an LXC using the Proxmox VE-Helper Scripts repo a few months ago. But instead of rebuilding the database from scratch, I downloaded the old one from the VM, sent it to the Proxmox host via SCP, and then used the copy command to move it to the /home directory in my LXC. I also ran the chmod command to grant full read/write access to the database.
As for the ebooks, I’ve always used the Upload button to feed new .pdf and .epub files to the app, though I had to enable it again via the Feature Configuration tab of the Edit Basic Configuration section of the Admin panel on my fresh LXC-based Calibre-Web server.
But it’s not the only bibliophile app in my arsenal
Kavita and Audiobookshelf have their own utility
As much as I adore Calibre-Web, I have to admit that I also use other self-hosted tools for my digital library. While Calibre-Web can technically organize comics, Kavita lets me browse graphic novels and manga from its built-in reader. Plus, its UI feels a lot better for reading and managing comics. Meanwhile, Audiobookshelf performs a similar task for my audiobooks and podcasts, with Pinchflat letting me bulk-download the latter from my favorite YouTube channels.
