Technical notes
How Open Inventoryworks internally.
Notes on queues, data models, APIs, labels, iOS, and self-hosting. With explicit limits and links to the open source.
Latest article

Batch capture: where the workflow saves time
Set location and type once. Each capture becomes a queued job; upload, analysis, and cover stages continue while you photograph the next object.
Read articleAll articles
Capture, data model, and operations
Implementation details, technical decisions, and known limits from the public repository.

Bulk stock or serialized units: differences in the data model
Bulk mode records quantities. In serialized mode, every unit has its own code, state, and location. Changing modes has technical preconditions.

QR labels in a makerspace: links, layout, and scan workflows
A resource label contains a compact link under /r/{code}. Layout, material, and the scan workflow determine whether it works in a workshop.

Self-hosting inventory: components and operational work
Next.js, PostgreSQL, and upload storage can run on your infrastructure. Backups, TLS, upgrades, and external data paths still need explicit configuration.

iOS app: camera, outbox, RoomPlan, and LiDAR
The SwiftUI app uses AVFoundation for photos and codes, a persistent outbox for uploads, and RoomPlan for parametric room geometry.
Batch capture
Shared fields are set once. Upload, analysis, and cover work run as separate idempotent queue stages.
Docker operations
Run Next.js, PostgreSQL, and upload storage yourself. Backups, TLS, and upgrades remain operator tasks.
Code and API
Repository, migrations, and the OpenAPI specification are public. The code is available under the MIT license.
Open source · MIT