Netnyahoo
Real Chromium for the Mac, free and open source: Arc's sidebar and Dia's polish, with no account. Immune to ads, trackers and prosecution.
Start a shared VR/AR lobby and place objects for collaborative interaction
AI summary · website content
OtherJavaScript · PythonGitHub @yxzhanOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗An multiplayer MuJoCo sandbox in the browser: spawn robots, drive them, pull them around, in one physics world shared by everyone connected (a Python server, e.g. on Binder), or alone with the physics in the page.
Live demo: https://yxzhan.github.io/robot-lobby/ (front end only: the physics runs in your browser, with part of the model library).
https://github.com/user-attachments/assets/242248f9-c4d9-415c-8fe0-4d691a56f08c
Physics from the official MuJoCo WASM bindings
(@mujoco/mujoco), rendering with Filament.js (WebGL2, PBR, sun shadows, SSAO).
No bundler — public/ is a static site. Its modules sit in public/js/
by what they are, each with its panel and its shipped defaults: app/
(the page, main.js), world/, net/ (network mode), render/,
cameras/, controllers/ (policies, base/, ik/), drive/ (who
drives each robot: keys, gamepad, goals; the Teleop panel), ros/,
behavior/ and agent/; public/json/ holds only generated indexes.
In the browser alone (the physics in the page):
scripts/get_assets.sh # the model library (mjcf_assets/, lite)
npm install # postinstall copies the wasm/js runtimes into public/vendor/
npm start # python3 scripts/serve.py 4007: public/ with Cache-Control: no-store
Open http://localhost:4007 (in JupyterHub: .../user/<name>/proxy/4007/ — all
URLs are relative, so the path proxy works).
A world shared by every browser that opens it (the physics in Python):
pip install mujoco numpy aiohttp onnxruntime numba
npm run server # python3 server/server.py 4007
Open http://localhost:4007. ?local in the URL keeps the page local even
there.
The model library is mjcf_assets/ next to package.json, a repository of
its own: scripts/get_assets.sh gets it (lite, the default: the models of
the GitHub Pages site; main: all of them) and updates it. Run
node scripts/vendor.mjs after adding models. Walking policies go in
pretrained_policies/ (Policies).
robot_station/, a submodule) — a real Panda (later SO-101) follows the lobby robot over rosbridge: teleop from the Quest 3, the real robot as a ghost, demonstrations recorded