The same Scene the builder uses, mounted read-only in the client portal: four camera views (Overview, Front, Gable end, Plan) and three layers (Finished, Roof off, Frame), a return button, and no editing surface at all.
Also called: customer portal 3D · client viewer · show the customer the building · 3D on the estimate · rotate my building · 3d model for the customer · see the building before I sign
The customer turns their own building around, inside the estimate they already opened
Four views — overview, front, gable end, plan — and three layers: finished, roof off, frame. Drag to rotate, scroll to zoom, Back to estimate in the corner. It opens flat on the plan view and lifts into the overview on its own, which teaches them it moves without anybody having to say so.
No login, no download, no CAD file
It is a button beside Review & approve on the estimate link you already sent. Nothing to install and nothing to sign into, and it works on the phone they are reading the price on. The 3D code is only fetched when the button is pressed, so a visitor who never opens it waits for nothing.
It is the same model the estimate was priced from
The viewer runs the builder's own renderer rather than a second one that could drift away from it. The customer is looking at the geometry, the openings and the finishes that produced the number they are about to approve. That is a different conversation from here is a render of something like it.
There is nothing in it they can change
No handles, no selection, no editing of any kind — orbit and the two menus are the whole interface. The three diagnostic layers a builder uses, foundation, roof framing and insulation, are not offered here. A customer cannot accidentally alter the thing they are approving.
The same viewer during the build, not only at quote time
The customer's project dashboard carries the same control, so the building they approved is still there while it is going up, beside the progress, the photos and the schedule. They can go back and look at what they bought instead of trying to remember it from a PDF.
- 1Everything that mutates is simply not passed: no drag handlers, no selection, no distribute, no inspect. Orbit and the two dropdowns are the whole interface.
- 2Three of the Scene's six layers are offered — foundation, roof frame and insulation are diagnostic views for whoever is building the thing.
- 3Scene is imported dynamically with ssr:false so the three.js bundle costs nothing until the button is pressed.
- 4The camera fly duration is shared with the builder through its own tiny module, so importing it does not pull three.js into the portal's initial bundle.
A customer approving a quote is looking at a page of numbers and a couple of photos of somebody else's building. The portal opens the actual building on their estimate in 3D from the approval screen — a few fixed views, the shell, roof-off and frame layers, and a way back to the quote. It is the same model the estimate was priced from rather than a second renderer built for customers, so what they approve is what they were quoted, and a customer who has walked around their own building raises far fewer questions after signing.
- Estimates approved from a price and a paragraph.
- A second customer-facing renderer that drifts from the one the price came from.
See it on your own jobs
Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.
or keep browsing features →