Layer 1 · Components
Drop finished components straight into your website.
Four SDKs — player, capture, review, report — shipped for Web, iOS and Android, so nobody on your team writes a WebGL viewer or a guided-capture camera flow.
4 SDKs · Web, iOS and Android · the API is switchable, a rendered viewer is not
Why this layer
Nobody should have to write a WebGL viewer to buy an inference API.
Every model in Layer 2 needs a complete, well-positioned shot set to read from, and every result needs somewhere to be seen. Both ends are front-end work that has nothing to do with your product's logic — so they ship as SDKs rather than as a specification.
The set
Four SDKs, each droppable on its own.
Take the player without the capture flow, or the capture flow without the report. Nothing here requires adopting the rest of the layer.
Player SDK
01Embeddable 360° inspection viewer — drops into your own site against a tokenised report URL
- 360° exterior
- Spin from an indexed frame set, drag and auto-rotate, mobile-first, hotspot-aware
- Interior panorama
- Cockpit view with navigable points of view
- Walkaround video
- Playback with timeline markers pinned to detected damages
- Photo gallery
- Ordered by shot position, before/after slider for raw vs rendered
- Hotspot overlay
- Consumes viewer/hotspots; tap a damage, get severity and repair cost
Capture SDK
02Camera flow that guides a non-expert through a complete shot set, start to finish
- Guided shot set
- Step-by-step prompts until every required position is covered
- Non-expert first
- Written for the customer holding the phone, not a trained inspector
- Complete or nothing
- The flow is what makes the downstream read reliable
Review SDK
03Human-in-the-loop validation and correction of model output
- Validate
- Confirm or reject each detection before it reaches a decision
- Correct
- Fix model output in place rather than working around it
- Gather
- Every correction is more data on the way back in
Report SDK
04Composed condition report, customer-branded, web or export
- Composed
- One document from the whole pipeline, not a pile of endpoint responses
- Customer-branded
- It reads as your report, not as ours
- Web or export
- Share a link, or hand over a file
Where it runs
One SDK per target, not one web bundle with wrappers.
The capture flow needs the camera, and the player needs the GPU. Both are platform work, so each target gets a real implementation — including a Capacitor-friendly path, since that is how we run it ourselves.
- Web
- Framework-agnostic core, plus Vue and React wrappers
- iOS
- Native SDK
- Android
- Native SDK
- Capacitor
- A supported path, because that is how we run it ourselves
What feeds it
These render Layer 2's output. They do not produce it.
Two endpoints do most of the feeding. Both are ordinary calls you can make yourself — the SDKs just consume their responses.
- POST /v1/video/onboard
Indexes a walkaround into positioned frames — what the player spins through
- POST /v1/viewer/hotspots
Anchors damages and parts to the vehicle — what the hotspot overlay draws
The rest of the stack
Same key, two layers down.
Drop in the player first.
It is an iframe against one tokenised report, so you can see the whole pipeline's output before you wire anything else.






