Local-first Spatial Inventory

Your space doesn’t adapt to the inventory system.
The inventory system adapts to your space.

IF YOU CAN DESCRIBE WHERE IT IS, KEEPIQ CAN INVENTORY IT.

A local-first spatial inventory engine for 3D printing farms, maker benches, and entire homes — indexed, mapped, and searchable by voice.

KEEPIQ DOESN’T REPLACE YOUR ORGANIZATION SYSTEM.
IT LEARNS YOUR SYSTEM.
THEN IT LEARNS HOW YOU TALK ABOUT IT.

Ask naturally. Correct it once. KEEPIQ remembers for next time.

Scroll
Make the Space Yours

Every corner can be a location.

Storage doesn’t begin with shelves, racks or numbered bins. It begins with knowing where something is.

A windowsill. The space beside the printer. Under the desk. On top of the heater. A wall hook. A drawer. A box in the corner. If that place makes sense to you, it can be a location in KEEPIQ.

Your physical space might simply be:Office → Window → Left corner
In KEEPIQ, you might call it:Office / Window Shelf

There doesn’t need to be an actual shelf. It’s a human-readable address for your things.

Because real homes, workshops, garages and studios aren’t warehouses. We don’t think in rack numbers and bin coordinates. We remember: “The spare servos are on the shelf by the window.”

KEEPIQ gives that natural, informal geography a digital structure.

Your space doesn’t adapt to the inventory system.
The inventory system adapts to your space.

Property → Room → Location

Every Room Is a First-Class Object

Slug, kind, colour and sort order — inventory, assets and the floor plan all carry a room_id, so search, voice and QR codes are room-aware without a later retrofit.

SHELF 03BENCH 01PANEL LIGHT ANOT YET DRAWN
Shelf 03
Typestorage
Capacity18 slots
Rotation0°
Positionx 214.5 · y 88.0 mm
1 location not yet drawn
Voice, Traced to the Shelf
SHELF 2 · SLOT 1

Slot 1 — PETG Translucent Blue

18 / 18 capacity
640g
Translucent Blue
210g
Signal Amber
88g
Ultraviolet
512g
Mint Batch 4
1.2kg
Arctic White
Tare weight 212gBatch count 6Next to expire 142 daysLast scan 2m ago
FEFO — first-expire, first-out consumption
Scan to inspect
NFCtap · local endpoint
Learned Language

It learns how you talk about your things.

KEEPIQ doesn’t replace your organization system. It learns your system, and then it learns how you talk about it.

Say “put these in the box under the Bambu”. If KEEPIQ isn’t sure which box, it asks once. Your answer becomes a learned association — and next time that phrase resolves straight to the right place.

You say:“the box under the Bambu”
KEEPIQ remembers:Workshop / Bench / Box 03

“Orange stuff.” “Printer screws.” “My electronics corner.” Whatever words you already use are the words that work.

An AI can help interpret a sentence, but the vocabulary itself stays yours: it lives on your appliance, visible under Learned Language, where every association can be edited or deleted.

Don’t learn how to talk to KEEPIQ.
KEEPIQ learns how you talk.

Deploy From Stock

One Unit Becomes One Tracked Asset

Deploying converts a countable stock line into a tracked device — asset tag, serial, hostname, role, IP/MAC, install and warranty dates, all in one row. Stock goes down by exactly one.

Countable stock6

Raspberry Pi 4 Model B · 8GB

Electronics Lab · Bin 07

Deploy a unit to see the asset row it creates
Workshop Buddy

The Edge AI Brain

Workshop Buddy · Gemini via secure proxy

What can we build today?What's missing for a project?What's nearly out of stock?
M3×10 Socket Screws
42 needed18 in stock
order 24
PETG Translucent Blue
640g needed210g remaining
order 1 spool
40mm Heat-set Insert
6 needed0 in stock
order 6
IndexedDB · LocalRaspberry Pi Bridge · ConnectedAI Key · Never Reaches Browser
Bill of Materials · Reservations

Reservations Are Their Own Layer

A project reserves stock without consuming it. A reservation whose physical stock has vanished gets flagged broken rather than silently going negative.

Free stock = Physical − Reserved
PartRequiredReservedConsumedMissingCompetingElsewhere
NEMA17 Stepper4420—Electronics Lab ×2
M3×10 Socket Screw4218024Print Farm Rack v2 ×12Bench 01 ×6
PETG Translucent Blue6404302100——
One Shopping List, Three Sources

Procurement

Below minimum, blocked by a project, or just on the wishlist — one list, ordered / received tracked per line.

M3×10 Socket Screw×24Project shortageOrdered
2020 Extrusion 500mm×8Project shortageNot ordered
PLA Black 1kg×2Low stockReceived
Panel Light Strip 5m×1WishlistNot ordered
Offline-first · Conflict-safe

Every Device Keeps a Cursor, Not a Copy

Edits queue in an outbox and replay in order. Quantities merge additively, descriptions take the newest write, locations are never guessed.

Outbox

Filament PLA Black −1synced
Shelf 03 movedreplaying
Asset KIQ-0042 statusqueued

Conflict inbox

Mine

Qty 4 · updated 2m ago

Cloud

Qty 6 · updated 40s ago

Devices

Pi · Workshoprev 1042
Phone · Katarev 1038
Laptop · Officerev 1029
Low Stock Alerts

Told Once, Not Twice

Auto re-check every 60 minutes, firing only when the list actually changed — plus one daily report at a set local time.

TelegramConnected
Home Assistant notifyConnected
Daily report06:00 local
Voice — “Hey Buddy”

One Wake Word, One Command

The mic closes while Buddy speaks, plus a short tail, so it never hears its own answer as a new command.

Listening→Wake: “Hey Buddy”→Executing→Speaking + tail
Kiosk mode?kiosk=1 · voice: "kiosk mode"
Appliance · Works Without Internet

A Screen on the Wall, Not a Server to Babysit

Kiosk display, Wi-Fi onboarding and USB file exchange are part of the device — not something you script yourself after the first boot.

Boots Straight Into the Floor Plan

A systemd unit opens Chromium full screen once the app answers — no browser chrome, no address bar, no screen blanking. The app hides its own chrome too.

Launchkeepiq-kiosk.service · KIOSK_URL override
App flag?kiosk=1 · voice: "kiosk mode"
Touch44px targets · no swipe-back · no text select
ExitEscape, or long-press a corner for 2 seconds
Displayxset s off · noblank · dpms off
First-boot Wizard

Configured On Screen, Not in .env

Eight steps with a progress bar that remembers where you stopped. Only storage is required — Wi-Fi, assistant, Home Assistant, notifications, Extras, serial and licence can each be skipped and finished later in Settings.

StorageRequired
/var/lib/keepiq/photos
saved on device
Setup PIN · Device Identity

One PIN Locks Setup and Settings

Unlocking sets a signed, http-only cookie for 8 hours. Five wrong attempts lock further tries for 15 minutes.

5 attempts remainingreset · deploy/reset-pin.sh
Device serialPIB-7F3A-9C2E-4410