SWAG Estimates
Multi-tenant SaaS for industrial construction estimating. It replicates an Excel estimating workbook in the browser: the workbook is extracted once into a JSON schema, IronCalc recomputes every formula client-side via WebAssembly, and only user-entered cell values are stored — as a diff against the schema rather than a full copy of the sheet.
How it works
- Workbook as schema — the source Excel workbook is extracted once into a JSON schema that defines the sheet structure and formulas.
- Client-side recalculation — IronCalc (MIT / Apache-2.0) runs as WASM in the browser and recomputes formulas without a server round trip.
- Diff-based storage — only the cell values a user actually enters are persisted, keeping stored estimates small and the schema authoritative.
- Fidelity verification — a server-side verifier uses IronCalc's native Node bindings to confirm browser results match the original workbook.
Stack
- Next.js 16 — App Router;
proxy.tshandles optimistic auth redirects, with real enforcement insrc/lib/auth/dal.ts - Auth.js v5 — JWT sessions via the credentials provider; signup creates a
User, aTenant, and anOWNERMembership
Guides
| Guide | What it covers |
|---|---|
| Working with estimates | Creating, duplicating, the grid, offline sync |
| Workbook templates | Uploading workbooks and fidelity verification |
| Your workspace and team | Sign-in, passkeys, members, and billing |