SiteStock

← projects

solves day-to-day problemsstartupsSiteStockApplicationVaultICGsolves day-to-day problemsstartupsSiteStockApplication VaultICG
2024 – presentrepo

SiteStock

construction inventory platform

A materials inventory system for a multi-site construction company, replacing spreadsheets with a mobile-first web app. It tracks every material movement in and out of every site, live stock levels, purchase invoices, and physical stock audits. In production, managing $29M+ of inventory across 20+ construction sites, and it cut inventory errors and reconciliation time by 35%.

How access works. Five permission levels, from read-only viewer up to org owner, and a user can hold a different role on every site. Permissions are enforced twice: the backend checks the role on every single route rather than relying on one middleware catch-all, and the database has row-level security policies on every table as a second line of defence. Even someone who got past the API would still be stopped at the database.

Why the ledger never lies. Nothing is ever deleted, only marked deleted, and every create, update and delete is written to an append-only log with the old and new state and the IP address. Creating a purchase invoice writes the stock movement in the same database transaction, so the bill and the stock level can never disagree.

Where the numbers come from. Live stock is a SQL view, not a Python loop: inward minus outward minus consumption, grouped by site and item, computed in the database along with stock value and an automatic minimum-stock threshold based on six months of usage. It costs the same whether there are two sites or two hundred.