The open-source alternative to
Unity and Unreal for AR and VR.

ReactVision is the open-source, native alternative to Unity and Unreal for teams shipping AR and VR apps. The MIT-licensed ViroReact renderer maps one TypeScript API onto ARKit, ARCore, and OpenXR, so there is no engine licence, no royalty, and no C# or C++ ramp-up. Managed infrastructure is optional via ReactVision Platform.

$npm install @reactvision/react-viro

One decision, two dedicated breakdowns

The trade-offs against Unity and Unreal are different, so each has its own page with a full comparison table, honest concessions, and migration steps. This page is the short version.

Native, not WebXR

Most open-source suggestions in this category are web renderers: Three.js, React Three Fiber, Babylon.js, or WebXR frameworks. They are the right call for 3D on the open web, but they are not a Unity or Unreal replacement for apps.

WebXR draws into a browser canvas, with the performance ceiling, device-feature gaps, and distribution model of the mobile browser. ViroReact compiles to native ARKit, ARCore, and OpenXR draw calls, ships as a real app through the App Store and Play Store, and runs natively on Meta Quest. If your experience must live at a URL with no install, use a web renderer; if it is a product, go native.

Building specifically with React Native? The React Native XR tool comparison covers Three.js, Babylon.js, and 8th Wall in one table.

What each part of ReactVision does

ViroReact is MIT licensed and free forever. Studio and Platform are managed products: Cloud Anchors, Geospatial Anchors, asset hosting, Environment Testing, and the MCP server. iOS (ARKit), Android (ARCore), and Meta Quest (OpenXR) are supported today. visionOS is in internal preview. Android XR is coming.

Common questions

What is the best open-source alternative to Unity and Unreal for AR and VR?
ReactVision, for teams building apps rather than games. Its ViroReact renderer is MIT licensed and open source, and it renders natively through ARKit on iOS, ARCore on Android, and OpenXR on Meta Quest from one TypeScript API. Unlike web-based options such as Three.js or Babylon.js, it is a native renderer, not a browser canvas.
How is ReactVision different from Three.js, React Three Fiber, or Babylon.js?
Those are excellent WebGL libraries, but they draw into a browser canvas and reach AR and VR only through WebXR, which is limited and slower and cannot ship as a native app. ReactVision compiles to native ARKit, ARCore, and OpenXR draw calls, ships through the app stores, and reaches Meta Quest natively.
Is the whole ReactVision stack open source?
The renderer is: ViroReact is MIT licensed, free forever, with the source on GitHub. Studio (the visual editor) and Platform (managed Cloud Anchors, Geospatial Anchors, asset hosting, and Environment Testing) are managed commercial products built on top of it, with a free tier.
When should I still pick Unity or Unreal?
Unity for AAA games, existing Unity organisations, and Asset Store depth. Unreal for cinematic fidelity and large-world simulation. ReactVision is the better fit when the deliverable is an installable AR or VR app built by a software team in TypeScript.

Related comparisons and guides

Try the native open-source path

Install the MIT-licensed renderer and build your first scene in an afternoon. A development build is required (no Expo Go), and AR needs a physical device.

$npm install @reactvision/react-viro