# Fast Inventory A quick-entry home inventory tool. Add items in seconds, track values, manage status, attach photos and receipts. ## Quick Start ```bash npm install npm run dev ``` Open http://localhost:5173 ## Usage **Add an item:** Type a name in the top bar and press Enter. That's it — 1 second. **Enriched entry:** Name → Tab → Category (autocomplete) → Tab → Location (autocomplete) → Enter. About 3 seconds. **Edit details:** Click any item row to open the detail modal. Add purchase price, date, notes, photos, receipts, or change status. **Statuses:** Active, Lent Out, Sold, Lost, Trashed. Defaults to Active. **Stats:** Click the Stats tab for value breakdowns, item counts, and inflow/outflow charts. ## Production ```bash npm run build npm start ``` Runs on http://localhost:3001 (single server, no separate frontend process). Set a custom port with `PORT=8080 npm start`. ## Tech Stack - **Backend:** Express + TypeScript + SQLite (better-sqlite3) - **Frontend:** React + Vite + Tailwind CSS + Recharts - **Storage:** SQLite database at `server/data/inventory.db`, uploads at `server/uploads/` ## Data All data is local. The SQLite database and uploaded files live in the `server/` directory: - `server/data/inventory.db` — database - `server/uploads/` — photos and receipts Back up these two paths to preserve your inventory. ## Scripts | Command | Description | |---|---| | `npm run dev` | Start dev servers (frontend + backend) | | `npm run build` | Build for production | | `npm start` | Run production server | | `npm run typecheck` | Type-check both packages |