How to build geospatial AR
without Niantic.
Pin content to latitude, longitude, and altitude through ReactVision Platform Geospatial Anchors, called from ViroReact. No Lightship SDK. The same app can also use local Cloud Anchors and ship to Meta Quest, all from one TypeScript codebase on an MIT-licensed renderer.
Five steps to content anchored in the world
The full path from nothing to AR content pinned to real coordinates. For the complete code walkthrough, follow the geospatial AR tutorial, which builds a working app with Claude Code and ViroReact.
Create a free Studio account
Geospatial Anchors run on ReactVision Platform. Sign up for ReactVision Studio on the free tier to get your rvApiKey and rvProjectId. No card required.
Install ViroReact
Run npm install @reactvision/react-viro in a React Native or Expo project. ViroReact needs a development build rather than Expo Go, and AR needs a physical iOS or Android device.
Add your Platform credentials
Put the rvApiKey and rvProjectId in your app config. From ViroReact 2.53.0, Geospatial Anchors and Cloud Anchors connect to ReactVision Platform by default, with no separate SDK to integrate.
Anchor content to coordinates
Create a geospatial anchor with latitude, longitude, and altitude, and attach your scene content to it. ViroReact resolves the anchor and renders the content at that real-world position.
Test at the location
Geospatial accuracy depends on GPS and on visual positioning coverage, so test on-site on a real device. Content placement is strongest outdoors with clear sky and mapped streets.
Cloud Anchors or Geospatial Anchors?
Two anchor types, two jobs. Most location-based apps end up using both, and both run on the same Platform credentials.
Geospatial Anchors: reach a place
Pin content to latitude, longitude, and altitude, no pre-scanning required. Right for city trails, landmarks, campus wayfinding, and anything discovered by walking up to it.
Cloud Anchors: precision in a space
Persist and share content in a scanned space, accurate to the shelf or tabletop. Right for stores, showrooms, galleries, and multi-user AR in one room.
The full decision guide: Cloud Anchors vs Geospatial Anchors, which one does your AR app need?
What each part of ReactVision does
ViroReact
The open-source native XR renderer. One TypeScript API mapped onto ARKit, ARCore, and OpenXR. MIT licensed, free forever.
Studio
The browser-based visual editor and CMS for XR scenes. Free to sign up.
Platform
Managed Cloud Anchors, Geospatial Anchors, asset hosting, and Environment Testing, accessed with an rvApiKey and rvProjectId.
MCP server
How coding agents use the stack: live ViroReact knowledge plus tools to validate, run, and test scenes.
Proof it ships
npm installs of ViroReact per month
npm installs in 2025
iOS, Android, and Meta Quest supported today
Shipped on ViroReact: Looking Glass (geospatial AR heritage storytelling), Pikd (brand AR for Red Bull and Burger King), InkStory (AR image recognition, built solo). The ViroReact MCP server is listed in the Claude Connectors Directory.
Common questions
How do I build geospatial AR without Niantic?
What is the difference between Cloud Anchors and Geospatial Anchors?
Is geospatial AR free on ReactVision?
How accurate is it, and where does it work?
Can I see a working example before building?
Related comparisons and guides
- Unity alternative for AR and VR →
- Unreal Engine alternative for AR and VR apps →
- Niantic Lightship alternative →
- 8th Wall alternative →
- Open-source Unity and Unreal alternative →
- Best AR/VR/XR tool for React Native →
- Can AI agents build AR and VR apps? →
- One codebase for AR on phones and VR on Quest →
- XR CMS: update content without an app release →
- React Native AR guide →
Anchor your first scene to the world
A free Studio account gives you the rvApiKey and rvProjectId that unlock Geospatial Anchors and Cloud Anchors in ViroReact.