Browser-based 3D visualizer for showing what small multifamily housing can fit on a lot under zoning-like constraints, with context, comparison, and shareable exports.
- Consolidated implementation spec:
SPEC.md - Source docs (original inputs):
docs/source/
Prereqs:
- Node.js 20+
Run:
npm install
npm run devOpen:
- Pick a lot preset (or enter custom width/depth + setbacks)
- Pick a housing preset
- Toggle
SinglevsCompare - Use
Copy linkto share a fully-encoded scenario URL - Use
Screenshotto download a PNG from the WebGL canvas - Use
Print sheetto open a print-friendly one-pager (then clickPrint)
Print sheet example:
npm run dev # start Vite dev server
npm run build # typecheck + production build
npm run preview # preview production build locally
npm run lint # eslint
npm run typecheck # tsc
npm test # vitest (CI mode)
npm run test:watch # vitest watch modesrc/App.tsx: main editor UI (controls, stats, share/export)src/domain/: core “zoning + evaluation” logic (pure, tested)src/view/: 3D rendering (React Three Fiber)src/print/: print-sheet route (driven by URL state)
This is a conceptual visualization tool. It is not legal advice and does not guarantee code compliance.
With the dev server running:
agent-browser open http://127.0.0.1:5173
agent-browser snapshot -i
agent-browser screenshot /tmp/building-viz.png
