Getting Started

It is strongly recommended that you work through this guide if you have never run CloudXR.js before.

Even for development, you'll need all the pieces of a CloudXR.js deployment in order to build and test a client. These are:

  • a CloudXR Server
    • with a top-end NVIDIA GPU or 2 (e.g. dual RTX 6000 Ada)
    • which will run
      • the CloudXR Runtime
      • an OpenXR application (the thing you want to render on the server but see on the client)
  • a CloudXR.js development workstation
    • with Node.js and npm
    • which will run
      • the CloudXR.js sample client build
      • a Node-based development web server
  • a CloudXR.js client
    • which is one of:
      • a Meta Quest 3 with its built-in Browser app
      • a desktop browser: Google Chrome or Edge (IWER automatically loads for WebXR emulation)
    • which will run...
      • the CloudXR.js sample client served from the development web server.

We recommend that for your first experience, all above run on the same computer to eliminate networking related issues.

You need both a working client and a working server in order to test. Typically we follow a startup flow where server starts before the client:

  1. CloudXR Runtime
  2. Server XR application
  3. Sample client build + web server
  4. Test from the same computer
  5. Test from Quest 3 or a different computer

Minimum: Single NVIDIA RTX 6000 Ada / L40 GPU or equivalent

Recommended: Two (2x) NVIDIA RTX 6000-class Ada (or later) GPUs:

  • RTX 6000 Ada
  • L40 / L40S
  • RTX 6000 PRO Blackwell (Workstation, Max-Q Workstation, or Server)

Additional requirements:

  • Linux OS (required for Isaac Lab Teleoperation)
  • Docker and NVIDIA Container Toolkit (Linux only)
  • Network: Wired Ethernet connection recommended

Supported headset:

  • Meta Quest 3 (OS version 79 or later) - only headset validated for this release
  • Uses built-in Browser app (no special software installation needed)
  • Some manual browser configuration required (see Client Setup Guide)

For development/testing:

  • Desktop Google Chrome (IWER automatically loads for WebXR emulation)

Critical requirements:

  • Latency: ≤ 40ms required, ≤ 20ms recommended
  • Bandwidth: 200+ Mbps per streaming connection
  • WiFi: WiFi 6 (WiFi 6e recommended) at 5GHz or 6GHz
  • At most one WiFi hop: Either server or client must use wired Ethernet

See Networking Setup Guide for detailed configuration examples.

Following the high-level workflow above, use these guides to set up each component:

Choose an OpenXR server application to stream:

The guide includes instructions for setting up the CloudXR Runtime alongside the server application.

Build one of our example web clients:

  • Test from the same computer first - Follow the desktop testing sections in the sample guides
  • Test from Meta Quest 3 - See Client Setup Guide for browser configuration
  • Configure networking (if needed) - See Networking Setup Guide for firewall and proxy examples
  • Session APIs - Programmatic control of CloudXR sessions
  • Telemetry - Performance monitoring and debugging