Music, films, books and games, physical and digital, scattered across shelves, storefronts and a media server. Armarium brings it into one self-hosted library, so you always know what you've already got.
Most collection trackers pick a side: a spreadsheet for the shelf, or a store's library for digital. Armarium treats a CD and its digital copy as one thing you own. It spots the match, and asks before it links them.
CDs live on a shelf. Digital purchases live in whichever store sold them. A media server knows what's been ripped. None of them know about each other, so answering "do I already own this?" means checking three or four places. Or not checking, and buying it twice.
Plex and tools like it play what you've got. Armarium sits a layer above: it keeps track of what you own, physical formats included, whether or not it's ever been ripped.
A record of everything you own shouldn't depend on one company's roadmap. Armarium runs on your own hardware, so it isn't at the mercy of someone else's subscription.
A physical copy and its digital twin become one entry. Locations are modelled too, right down to which box.
Scan a barcode with your phone or laptop camera, discs and cartridges alike, and the title, artwork and release details fill themselves in.
Search what you own before you buy it again. Connect a Plex server and your existing library joins the catalogue, without re-entering a single title.
A couple of Docker containers: FastAPI and async SQLAlchemy behind a React frontend. SQLite by default, so there's nothing extra to set up, with PostgreSQL if you want it. Everything, covers, backups and the database itself, lives in one volume you control.
Armarium is live, self-hosted and MIT licensed. Next up is more formats and better linking, and the goal is still to answer "do I already own this?" faster than checking by hand.
The story of how it was built is on my site.