WebXR SDK
Build AR web experiences with precise indoor localization using the Multiset VPS WebXR SDK
The Multiset VPS WebXR SDK (@multisetai/vps) adds Visual Positioning System localization and object tracking to web-based AR applications. It captures camera frames from an active WebXR session, sends them to the Multiset cloud, and returns a precise 6-DOF pose that you can use to anchor virtual content to the real world.
WebXR immersive-ar is supported on Android (Chrome 81+, ARCore). Safari on iOS does not implement the camera-access feature required for VPS.
Features
6-DOF VPS localization against single Maps and MapSets
Object tracking for registered 3D objects
Adapters for Three.js and Needle Engine
Zero-dependency core for custom renderers
Built-in AR button, mesh visualization, and confidence filtering
Entry Points
The package ships four independent entry points. Install only what you need.
@multisetai/vps/core
None
MultisetClient, XRSessionManager, all types
@multisetai/vps/three
three >= 0.169.0
ThreeAdapter
@multisetai/vps/needle
@needle-tools/engine >= 5.1.2
NeedleAdapter, MapAnchor, MultisetVPS
@multisetai/vps
None
Core + Three.js (convenience re-export)
Installation
Three.js projects:
Needle Engine projects:
Needle Engine ships its own Three.js fork, so you do not install three separately.
Requirements
Node.js 18+
HTTPS (WebXR requires a secure context)
AR-capable Android device with ARCore
Next Steps
Authentication — get credentials and authorize the client
Three.js Integration — full working example with Three.js
Needle Engine Integration — Inspector-driven and programmatic usage
Object Tracking — detect and pose registered 3D objects
Localization Options — hints, confidence filtering, background localization
Core Usage — use without Three.js (custom renderers)
API Reference — full parameter and callback reference
Last updated
Was this helpful?

