Developer tools#3D modeling#AI generation
3d-model-anything: scan a room with iPhone LiDAR, get an editable Three.js scene
Wes Bos's open-source Swift toolchain: capture a room with iPhone LiDAR, then let an AI agent rebuild it as an editable Three.js scene.
Project facts
GitHub Ecosystem- License
- MIT
- Language
- Swift
- Stars
- 2,319
- Data checked
- 2026-10-29
Snapshot figures reflect the check date and may change over time.

Walk around a room with your iPhone and end up with a 3D scene you can orbit in the browser — and keep editing. That is not a big-company demo; it’s an open-source Swift toolchain from Wes Bos. 3d-model-anything (MIT) works in two steps: capture the room with the iPhone’s LiDAR sensor and photogrammetry, measurements included; then hand the capture to an AI agent that generates a fully editable Three.js scene — every piece of furniture is its own manipulable object, not one baked mesh. Six viewing modes ship out of the box: dollhouse, first-person walkthrough, top-down, wireframe, knolling (everything laid out flat) and per-object highlight. Created October 21, 2026, the repo hit 2,319 stars in a week and ships with a live demo site and a YouTube walkthrough.

Core features
- Captures with measurements: LiDAR depth plus photos means the rebuild knows real-world dimensions — furniture spacing in the scene is trustworthy, not eyeballed.
- Agent rebuild, not algorithm rebuild: capture data goes to an AI agent that writes Three.js code; walls, floors and furniture are organized in layers you can re-material, move or delete straight in code.
- Six views built in: dollhouse (ceiling off, look down), walkthrough, top-down, wireframe, knolling and object highlight — no extra wiring.
- Agent skill included: the repo ships a companion skill that wraps the capture-rebuild-edit loop into a reusable skill call.
Typical use cases
- Renovation and moving day rehearsals: scan the current room, rearrange furniture in the rebuild — with real dimensions.
- Cold-start for 3D/VR scenes: modeling a room from scratch takes days; a scan gives you an editable base to start from.
- Teaching material: the full capture-generate-edit chain is open, making it one of the best reference implementations of “reality to 3D”. The capture half is Swift, the rebuild half depends only on the agent and Three.js, and each can be studied on its own.
Quick start
You need a LiDAR-equipped iPhone (Pro models). The README offers two paths: use the prebuilt capture app to scan and export, or clone and build in Xcode; feed the capture file to any agent-capable editor (Claude Code works) that runs the rebuild skill, and the resulting Three.js scene opens in a browser. The demo site at wesbos.github.io/3d-model-anything has ready-made scans to poke at, so you can judge rebuild quality before buying into the workflow.
Scan quality is the whole game on the capture side: slow passes, good lighting and open blinds beat haste; the capture app shows a coverage preview so gaps are visible before you export. On the rebuild side, the generated scene keeps measurements as metadata, which is what lets the knolling view lay objects out at true relative size. The skill also writes a plain-text manifest of what it rebuilt — useful for diffing two scans of the same room across a renovation.
Summary
3d-model-anything fits developers and 3D hobbyists with a LiDAR iPhone: real dimensions, editable code instead of a baked mesh, and an agent skill on top — it collapses “room to Three.js” from a day of modeling to minutes of scanning. It also confirms a pattern this site has tracked all year: sensors capture, generative models rebuild, and the human modeling step in between disappears — text-to-cad runs the same play for manufacturing, with engineering drawings in place of rooms. Three honest caveats: the repo is a week old with no releases, so the workflow will move; rebuild quality tracks scan quality, and glossy surfaces and repeating textures remain LiDAR’s physical weak spots; agent rebuilds burn model calls, and centimeter-grade surveying is not the goal. If you want pure photogrammetry without LiDAR, or a Matterport-class commercial pipeline, this doesn’t replace them — its bet is a new pipeline: capture to the sensor, rebuild to the agent.