Open-source project
sysadminsmedia/homebox avatar
sysadminsmedia/homebox

HomeBox: A Self-Hosted Inventory System That Trades Complexity for SQLite Simplicity

A continuation of HomeBox the inventory and organization system built for the Home User.

7,245 stars551 forksGoAGPL-3.0

At a glance

What is it?
HomeBox is a Go-based home inventory and organization tool that stores everything in SQLite and ships as a single container. It suits users who want quick setup and low resource use, but its single-user focus and AGPL license may limit some adopters.
Who is it for?
Adopt HomeBox if you are a home user who wants a fast, low-memory inventory system with Docker and SQLite, and you are comfortable with the AGPL-3.0 license. Skip it if you need multi-user collaboration, complex asset tracking with external dependencies, or a project with a stable maintenance history.
Can I use it commercially?
Yes, with strict conditions. AGPL-3.0 is a network copyleft licence: if people use a modified version over a network, for example as a hosted service, you must offer them its source code under the same licence.
Is it still maintained?
Yes. The repository last received commits 5 days ago.
What is it written in?
Mainly Go, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 14, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

What HomeBox Actually Solves

HomeBox is an inventory and organization system built for the home user. It targets people who want to track items, locations, categories, warranties, and maintenance schedules without running a heavy enterprise asset management platform. The README emphasizes simplicity and ease of use, with no complicated setup. It is not designed for businesses or teams; it is for individuals who want a personal catalog of their belongings. The project is a continuation of the original HomeBox by hay-kot, maintained by the sysadminsmedia group. If you have ever tried to remember where you put a power drill or when you bought a washing machine, HomeBox gives you a structured place to record that.

The Architecture: Go, SQLite, and an Embedded UI

HomeBox is written in Go, which compiles to a single binary. The README states that the entire container generally uses less than 50MB of idle memory. That low footprint comes from the choice of SQLite as the database and an embedded Web UI. SQLite means no separate database server to install or maintain. The whole application runs in one process. The Web UI is served directly from the binary, so there is no Node.js frontend build to manage. This design makes deployment and backup trivial: you copy a file or back up a volume. The trade-off is that SQLite does not handle concurrent writes from many users well, but HomeBox is aimed at a single home user, so that limitation is rarely relevant.

Deployment: Docker, a Pepper File, and Permissions

The quick start in the README gives a concrete Docker command. You first generate a pepper value with `openssl rand -base64 48 > hbox.pepper` and set permissions with `chmod 400`. That pepper is passed to the container as the environment variable `HBOX_AUTH_API_KEY_PEPPER`. You also need to create a data folder and set ownership to UID 65532 if you use the rootless or hardened image. The command publishes port 3100 to the container's 7745, sets the timezone, and mounts the data folder to `/data`. The image is `ghcr.io/sysadminsmedia/homebox:latest`, with variants for rootless (`-rootless`) and hardened (`-h`). This is a straightforward single-container deployment, but note that the pepper file is essential: if you lose it, any API keys you generated become invalid.

Key Features: What You Can Track

HomeBox offers rich organization. You can group items into categories, locations, and tags, and add custom fields for extra data. The search feature is described as powerful, which likely means you can filter by these attributes. You can upload images for each item, which is useful for visual identification. Document and warranty tracking is built in, so you can attach a receipt or a warranty PDF to an item. Purchase and maintenance tracking records dates, prices, and schedules. For example, you could set a reminder for an annual HVAC filter change. The responsive design means the interface works on a phone, which is practical when you are standing in a garage and need to check what you own.

The Maintenance Reality: A Fork with a Recent Push

The repository shows recent activity: the last push was June 14, 2026, with releases v0.26.0, v0.26.1, and v0.26.2 all in June 2026. That suggests active development, but the project is a continuation, meaning it depends on the original maintainer's legacy and the new team's commitment. The README mentions a contributing guide and a Weblate instance for translations, which indicates an open contribution model. However, the license is AGPL-3.0. That has implications if you modify the code and offer it as a network service: you must share your modifications. For a home user who just runs the container, this is rarely a problem, but if you plan to extend HomeBox and host it for others, you need to understand the license.

Limitations and When It Is the Wrong Tool

HomeBox is not a multi-user system by design. The README says it is for the home user, singular. If you want to share inventory with a partner or family members, you would need to check whether the current version supports that, and the documentation is thin on this point. SQLite also means no built-in replication or high-availability. If the container dies, you restore from a backup. The search is described as powerful, but without a full-text search engine like Elasticsearch, complex queries over thousands of items may be slow. For a professional environment with asset tags, barcode scanning, and integration with procurement systems, HomeBox is the wrong tool. It is also not ideal if you need a mobile app with offline capabilities; the responsive web UI is not a native app.

Alternatives: What Else Is Out There

The main alternative is Snipe-IT, a web-based asset management system written in PHP. Snipe-IT uses MySQL or MariaDB and offers a full API, check-in/check-out workflows, and multi-user support. It is designed for IT departments and businesses, not just home users. The approach is fundamentally different: Snipe-IT requires a database server and a web server, while HomeBox bundles everything into one binary with SQLite. Another alternative is a simple spreadsheet or a note-taking app, which has zero setup but lacks the structured fields and image uploads. For someone who wants a dedicated system with low overhead, HomeBox is the simpler choice. For a team or a business, Snipe-IT is the more appropriate tool.

What to Verify Before You Adopt

Before committing to HomeBox, verify the current state of the project on GitHub. Check the open issues for any critical bugs, especially around data loss or backup. Confirm that the Docker image tag you plan to use is still maintained; the README shows `latest`, but you may prefer a versioned tag. Test the backup process: since SQLite is a single file, you can copy the `/data` directory, but you should ensure the container is stopped or use a consistent backup method. Also, verify the API key pepper setup: if you ever need to regenerate keys, you must keep the pepper file safe. Finally, review the AGPL license terms if you intend to modify the source. The project is young as a continuation, so check the release notes for any breaking changes between versions.

Editorial conclusion

Adopt HomeBox if you are a home user who wants a fast, low-memory inventory system with Docker and SQLite, and you are comfortable with the AGPL-3.0 license. Skip it if you need multi-user collaboration, complex asset tracking with external dependencies, or a project with a stable maintenance history. Before adopting, verify the current state of the project on GitHub, check the recent release cadence and any open issues, and review the AGPL implications if you plan to modify and distribute the code.

Official sources

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Community notes

Community notes