3D Model Anything: turn an iPhone room scan into an editable Three.js scene
Added NewCopyable prompt below
Published Last verified Released
Our verdict
The most practical scan-to-3D workflow we've seen for coding agents: instead of dumping a mesh, the agent models each object as editable Three.js geometry and keeps checking its render against the photo taken from the same camera spot. It is not one-click. You need a LiDAR iPhone or iPad, you build the capture app yourself in Xcode (there's no App Store release yet), and the README calls it an iterative reconstruction workflow that currently focuses on rooms and interiors. Code and skill are MIT; the bundled office images have separate asset terms. Wes Bos says big measurements came out within about an inch; we have not run it ourselves.
- Who it's for
- Front-end and Three.js developers, makers, and people who want a walkable 3D model of a room, office or rental for the web
- Leverage
- An editable, version-controlled 3D room built by your agent from a phone scan, instead of hours of manual modelling
- Effort
- High
- Date added
What it does
The repository (wesbos/3d-model-anything) holds three pieces. The 3D Model Anything iPhone app records LiDAR room geometry and hundreds of photos, then exports a capture bundle. The scan-to-threejs skill (.agents/skills/scan-to-threejs) guides an agent through measurement, modelling and matched-camera visual comparisons, using Python helpers (Pillow for photo comparisons; NumPy and Open3D for optional depth reconstruction) and the agent-browser CLI for captures. A Three.js viewer (Node.js 22.12+) lets you explore the result in dollhouse, walking, overhead, wireframe and knolling views. Only Wes's office demo is distributed; your own scans stay local.
How builders use it
- Clone the repo and run npm ci then npm run dev to explore the office demo at localhost:5188.
- Build the capture app in Xcode with your own signing team (see apps/house-capture) and scan a room on a LiDAR iPhone or iPad.
- Export the session through the share sheet and extract it into data/captures-in/<room>/.
- Open the repo in an agent that loads local skills and ask it to use scan-to-threejs on that folder, then keep pushing it on objects that don't match the photos.
What to expect
A room you can walk through in the browser, made of editable Three.js objects you can rearrange, restyle or reuse, rather than a frozen scan mesh.
Copy this: Setup + agent ask
# Official source: github.com/wesbos/3d-model-anything (MIT code; separate asset terms)
git clone https://github.com/wesbos/3d-model-anything
cd 3d-model-anything
npm ci
npm run dev # office demo at http://localhost:5188
# After scanning with the iPhone app and extracting the export to data/captures-in/my-room:
Use scan-to-threejs to rebuild the room in data/captures-in/my-room. Inspect the measurements and photos, create an editable scene, and compare rendered views with the original photographs.Related discoveries
See the newest picks →- ToolCreative & Media
OpenFilm: editable videos from your coding agent
MIT skill and local editor that lets Claude Code, Codex or another coding agent write a video as web pages, then lets you change any part of it by hand.
NewEffort: LowPrompt#Video#Open source
- WorkflowCreative & Media
Prompt videos in code with Remotion and a coding agent
Scaffold a Remotion project, add its agent skills, and describe the video to Claude Code, Codex or OpenCode.
NewEffort: MediumPrompt#Video#Open source
- ToolCreative & Media
HyperFrames: HTML videos from a coding agent
Apache-2.0 framework that turns HTML, CSS and seekable animations into deterministic MP4s, with agent skills for Claude Code, Codex and Cursor.
NewEffort: MediumPrompt#Video#Plugin / extension
- ToolCreative & Media
Pele: Mermaid diagrams as themeable SVG
MIT Mermaid-to-SVG renderer from the Obsidian team: synchronous, zero runtime deps, styled with CSS variables.
NewEffort: LowPrompt#Image#Open source
Want more like this?
Practical discoveries, without the noise.