Getting Started with CloudXR.js#

This overview outlines a high-level workflow for building CloudXR.js streaming applications.

High-Level Workflow#

Building a CloudXR.js application involves three main steps:

  1. Set up the Server: Install CloudXR Runtime with an OpenXR-compatible server application

  2. Build the Client: Create a web client using CloudXR.js

  3. Connect and Stream: Access your web app from a VR/AR headset or desktop browser

Before proceeding, review the CloudXR.js Requirements for server, client, and network requirements.

Server Setup#

You need CloudXR Runtime with an OpenXR compatible server application. Refer to Getting Started with CloudXR Runtime for detailed server setup instructions.

Important

Ensure CloudXR Runtime is configured with device profile set to auto-webrtc for web clients.

Tip

For the fastest getting-started path, use the LÖVR sample as your server app. In Windows web workflows, run the server with run.bat --webrtc. See Quick Start Guide and End-to-End Example for setup details.

Client Setup#

Download the CloudXR.js npm package tarball from NGC (see Getting CloudXR for details). Install it with:

npm install </path/to/nvidia-cloudxr-<version>.tgz>

We provide sample projects to help you get started:

See Sample Applications for available samples and Client Setup Guide for device configuration.

Connection Modes#

CloudXR.js supports two connection modes:

HTTP Mode (Development)
  • Simplest setup - no proxy required

  • Direct WebSocket connection to CloudXR Runtime

  • Requires browser flags on Meta Quest

  • Not supported on Pico 4 Ultra

HTTPS Mode (Production)
  • Works on all supported devices including Pico 4 Ultra

  • Requires WebSocket SSL proxy setup

  • Production-ready with TLS communication

See WebSocket Proxy Setup for WebSocket proxy setup and Network Setup for network configuration.

Next Steps#