Rename project from inventree to vibetree

- go.mod module path (and every internal/vibetree import) inventree -> vibetree
- cmd/inventree/ -> cmd/vibetree/, deploy/inventree.service -> vibetree.service
- Default site name (seed data + the siteName template func's fallback)
  is now "vibetree", shown in the navbar, <title>, and login page
- Session cookie renamed inventree_session -> vibetree_session
- Default DB path data/inventree.db -> data/vibetree.db, CLI/log text,
  Dockerfile, docker-compose.yml, README, .gitignore/.dockerignore all
  updated to match

Existing installs: this changes the session cookie name (users will be
signed out once) and the default DB filename (point -db at your existing
file, or rename it, to keep your data).
This commit is contained in:
Owen
2026-08-17 17:14:52 -05:00
parent 14e2f3bb77
commit f3a959334f
47 changed files with 139 additions and 139 deletions
+25 -25
View File
@@ -1,6 +1,6 @@
# inventree
# vibetree
A small, self-contained IT asset inventory system. The heart of inventree is a
A small, self-contained IT asset inventory system. The heart of vibetree is a
nested folder tree — like a file manager — for organizing physical and
virtual IT assets (servers, switches, laptops, printers, etc.).
@@ -14,8 +14,8 @@ virtual IT assets (servers, switches, laptops, printers, etc.).
## Quick start
```sh
go build -o inventree ./cmd/inventree
./inventree serve
go build -o vibetree ./cmd/vibetree
./vibetree serve
```
Then open http://localhost:8080 and log in with:
@@ -28,18 +28,18 @@ Password: admin
(This default account is created intentionally on first run. Change or
disable it via the Users admin page once you're up and running.)
The database file is created automatically at `data/inventree.db` on first
The database file is created automatically at `data/vibetree.db` on first
run, with migrations applied and seed data (default statuses, item types,
and the admin account) inserted.
## CLI
```sh
inventree # same as `inventree serve`
inventree serve # start the web server
inventree version # print the version
inventree database migrate # apply pending migrations and exit
inventree database backup [path] # write a consistent VACUUM INTO snapshot
vibetree # same as `vibetree serve`
vibetree serve # start the web server
vibetree version # print the version
vibetree database migrate # apply pending migrations and exit
vibetree database backup [path] # write a consistent VACUUM INTO snapshot
```
`serve` flags:
@@ -47,7 +47,7 @@ inventree database backup [path] # write a consistent VACUUM INTO snapshot
| Flag | Default | Description |
|---------------------|------------------------|--------------------------------------------|
| `-addr` | `:8080` | Listen address |
| `-db` | `data/inventree.db` | Path to the SQLite database file |
| `-db` | `data/vibetree.db` | Path to the SQLite database file |
| `-secure-cookies` | `false` | Mark the session cookie `Secure` (enable when serving over HTTPS) |
`/healthz` is available for load balancer / container health checks.
@@ -158,13 +158,13 @@ fresh one over a few peeled-off labels.
references with examples are documented right on that page.
A full backup/restore of everything (folders, assets, types, custom fields,
statuses, users) is just `inventree database backup` — it's a consistent
statuses, users) is just `vibetree database backup` — it's a consistent
snapshot of the whole SQLite database.
## Project layout
```
cmd/inventree/ CLI entrypoint (serve, version, database migrate/backup)
cmd/vibetree/ CLI entrypoint (serve, version, database migrate/backup)
internal/
auth/ session management, secure cookies
database/ SQLite connection, pragmas, migrations
@@ -201,33 +201,33 @@ the compiled binary has no C library dependencies.
docker compose up --build
```
This builds the image, starts inventree on port 8080, and persists the
database in a named volume (`inventree-data`, mounted at `/app/data`).
This builds the image, starts vibetree on port 8080, and persists the
database in a named volume (`vibetree-data`, mounted at `/app/data`).
Or directly:
```sh
docker build -t inventree .
docker run -p 8080:8080 -v inventree-data:/app/data inventree
docker build -t vibetree .
docker run -p 8080:8080 -v vibetree-data:/app/data vibetree
```
## systemd
See `deploy/inventree.service` for an example unit. Adjust the paths, then:
See `deploy/vibetree.service` for an example unit. Adjust the paths, then:
```sh
sudo useradd --system --home /opt/inventree --shell /usr/sbin/nologin inventree
sudo mkdir -p /opt/inventree/data
sudo cp inventree /opt/inventree/inventree
sudo chown -R inventree:inventree /opt/inventree
sudo cp deploy/inventree.service /etc/systemd/system/
sudo useradd --system --home /opt/vibetree --shell /usr/sbin/nologin vibetree
sudo mkdir -p /opt/vibetree/data
sudo cp vibetree /opt/vibetree/vibetree
sudo chown -R vibetree:vibetree /opt/vibetree
sudo cp deploy/vibetree.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now inventree
sudo systemctl enable --now vibetree
```
## Scope
inventree is intentionally a focused MVP: folders, assets, custom types,
vibetree is intentionally a focused MVP: folders, assets, custom types,
statuses, users, search, and CSV import/export. It does not include
ticketing, purchasing, monitoring, RMM, MDM, or accounting features — if you
need those, look elsewhere and integrate via CSV.