be3221e93dd80ee9aef74267f1fb35c9558fe56d
- SPEC: add User Story 0 (Property Setup via Catastro) as P1 entry - SPEC: add catastro_data and catastro_imports tables to data model - PLAN: add Phase 2A (Catastro Integration) with 8 tasks - AGENTS.md: add 3 key decisions (Catastro SSOT, 3DGS hybrid, plan inputs) - Demo v3: Spanish apartment (C/ Altabix 24, 3ºB, Elche), 7 rooms, upload panel for catastro/DXF, proper collisions on all doors
InteriorScan
Turn apartment photos into navigable 3D walkthroughs.
InteriorScan is a self-hosted SaaS platform for interior photogrammetry targeting real estate. Upload 30-100 photos of a property, the system reconstructs a 3D mesh (COLMAP + OpenMVS), and visitors navigate the space in first-person — like a Doom map of a real home.
Why?
Physical property visits are time-consuming and often unnecessary. InteriorScan lets potential buyers walk through a reconstructed interior from their browser, filtering out properties that don't fit before scheduling a visit.
Features
- 📸 Photo-first capture — iPhone/Android photos as baseline, LiDAR optional
- 🎮 FPS navigation — WASD + mouse (desktop), tap-to-walk (mobile)
- 🔗 Share & embed — public links + oEmbed for listing pages
- 📐 Measurements — room dimensions overlaid on walkthrough
- 🗺️ Floor plans — DXF/PDF export from reconstructed geometry
- 🔌 API-first — every feature has REST API before UI
- 🏠 Self-hosted — PostgreSQL + Valkey + GPU worker, no vendor lock-in
Stack
| Layer | Technology |
|---|---|
| Framework | Next.js 16 (App Router) |
| Monorepo | Turborepo + pnpm |
| Database | PostgreSQL + Drizzle ORM |
| Cache/Queue | Valkey |
| 3D Viewer | three.js |
| Processing | COLMAP + OpenMVS |
| Auth | better-auth |
| Billing | Stripe |
| Lint | Biome 2.x |
| Testing | Vitest v4 + Playwright |
Quick Start
pnpm install
pnpm dev
Project Structure
interiorscan/
├── apps/web/ # Next.js 16 App Router
├── apps/processor/ # GPU processing worker
├── packages/auth/ # better-auth + RBAC
├── packages/db/ # Drizzle schema + migrations
├── packages/viewer/ # three.js FPS walkthrough viewer
├── packages/ui/ # shadcn/ui v4 + Tailwind tokens
├── packages/utils/ # Zod, neverthrow, error catalog
└── .specify/ # Constitution, specs, plans
License
Apache-2.0
Description
Interior photogrammetry SaaS - Doom-map style 3D walkthroughs for real estate
Languages
HTML
98.9%
Shell
1.1%