How utsapoddar/ai-interior-designer works
LiDAR Room Designer turns a scanned room and the user's design preferences into a checked furniture plan and preview. The main flow is USDZ upload and parsing, intent and catalog selection, deterministic placement and repair, then plan presentation. The README documents broader capture, reference-image, shopping, and preview capabilities; source excerpts are partial, so uncertain internal wiring is omitted.
Main entry points: plans.py Plan endpoints · api.ts API client · App.tsx Web app routing · app.py FastAPI app
Components 21
Web experience
- Web app routing
frontend/src/App.tsx - Scan upload
frontend/src/routes/UploadPage.tsx - Design chat
frontend/src/routes/ChatPage.tsx - API client
frontend/src/lib/api.ts
Room geometry
- FastAPI app
chat/app.py - Scan endpoints
chat/routes/scans.py - USDZ parser
ingest/parser.py - Parsed mesh files
ingest/parsed-mesh
Furniture planning
- Plan endpoints
chat/routes/plans.py - Intent orchestration
llm/orchestrator.py - Catalog endpoints
chat/routes/catalog.py - Furniture catalog
catalog/seed/bedroom.json - Layout solver
solver/layout.py
Plan and preview
- Plan image generation
llm/image_gen.py - Plan preview page
frontend/src/routes/PreviewPage.tsx - 3D room renderer
frontend/src/three/RoomPreviewScene.tsx - Furniture assets
frontend/src/three/furniture_assets.ts
Other components
- Room designer
- RoomPlan capture
- Vision model service
- Image generation service
Connections 27
- Room designer → RoomPlan capture: scans room
- RoomPlan capture → Scan upload: exports USDZ
- Room designer → Web app routing: uses app
- Web app routing → Scan upload: routes to
- Web app routing → Design chat: routes to
- Web app routing → Plan preview page: routes to
- Scan upload → API client: uploads scan
- Design chat → API client: requests plan
- API client → FastAPI app: sends requests
- FastAPI app → Scan endpoints: dispatches
- FastAPI app → Plan endpoints: dispatches
- FastAPI app → Catalog endpoints: dispatches
- Scan endpoints → USDZ parser: parses USDZ
- USDZ parser → Parsed mesh files: writes mesh
- Plan endpoints → Parsed mesh files: loads mesh
- Plan endpoints → Intent orchestration: requests proposals
- Intent orchestration → Vision model service: sends prompt and images
- Plan endpoints → Catalog endpoints: gets candidates
- Catalog endpoints → Furniture catalog: reads records
- Plan endpoints → Layout solver: validates and places
- Plan endpoints → Intent orchestration: requests replacements
- Plan endpoints → Plan image generation: schedules images
- Plan image generation → Image generation service: requests renders
- Plan preview page → API client: loads plan and catalog
- Plan preview page → 3D room renderer: renders plan
- 3D room renderer → API client: loads scan and plan
- 3D room renderer → Furniture assets: selects models