Skip to content

IRL2/nanover-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Github-CI: Build Status

NanoVer Web

A proof of concept or prototype of NanoVer for the browser and WebXR.

Developer setup

Install (Windows)

Install node.js, git, Visual Studio Code.

winget install -e --id OpenJS.NodeJS
winget install -e --id Git.Git
winget install -e --id Microsoft.VisualStudioCode

Clone this repo and install its dependencies:

git clone https://github.com/IRL2/nanover-web.git
cd nanover-web
npm install

Developing

Run a live server that opens a new browser tab and refreshes when you edit the code:

npm run dev

Build the standalone web package:

npm run build

Preview the standalone web package:

npm run preview

WebXR and headset

For security, WebXR requires that the page be served over HTTPS, so you will need to configure the Live Server extension to use an SSL certificate.

To do so, install OpenSSL, and generate a private key and certificate:

  • Either choose "nanover" as the passphrase or update it later in the vite config
  • Skip all data input except common name which should be localhost
openssl genrsa -aes256 -out localhost.key 2048
openssl req -days 3650 -new -newkey rsa:2048 -key localhost.key -x509 -out localhost.pem

NanoVer server tests

This won't work in Firefox because it disallows connecting to self-signed websockets.

Run a NanoVer python server with nanover-omni, giving ssl credentials, and the cloud discovery address:

nanover-omni --omm tutorials/ase/openmm_files/17-ala.xml --ssl localhost.pem localhost.key key_password --cloud-discovery irl-discovery.onrender.com