--- id: mjviser version: "0.0.14" license: Apache-2.0 license_treatment: permissive maintenance: active --- # mjviser — Web-based MuJoCo viewer powered by viser. License: permissive · Maintenance: active · Downloads: 159.2K/mo ## What it is and what it does mjviser wraps MuJoCo physics simulations in a web-based viewer built on Viser, letting you visualize and interact with robot models through a browser. It runs as a standalone command-line tool (e.g., `mjviser model.xml`) or as a Python API that you embed in your own simulation loop. The viewer provides simulation playback controls, joint and actuator sliders, contact and force visualization, camera tracking, and keyframes—most of what the native MuJoCo viewer offers, but accessible over the web. The package depends on mujoco, numpy, trimesh, viser, and pillow. It supports Python 3.10–3.14 and is actively maintained. You can extend it with custom callbacks for simulation steps, rendering, and reset logic, or use the underlying ViserMujocoScene directly to add arbitrary Viser GUI elements and overlays. Use it for: - Visualize and debug MuJoCo robot models in a web browser without native GUI dependencies. - Build interactive robotics dashboards with custom controls and overlays using Viser's GUI framework. - Playback and scrub through recorded simulation trajectories with timeline and speed controls. - Run parallel multi-environment simulations and view them side-by-side in the browser. - Prototype robot controllers with live joint sliders and contact visualization for real-time feedback. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. mjviser is a web-based viewer for MuJoCo physics simulations, providing an interactive browser interface with simulation controls, joint sliders, contact visualization, and camera tracking. Yes. mjviser is actively maintained, has no known vulnerabilities, installs with low friction, and fills a clear niche: web-based MuJoCo visualization without native GUI setup. It's well-suited for robotics prototyping, debugging, and dashboards. The only caveat is that mouse interaction (body clicking/dragging) is not yet supported and requires upstream Viser changes. ## Install pip install mjviser uv add mjviser poetry add mjviser ## Installing mjviser Before you install: Low friction installation with a pure Python wheel. Active maintenance (last commit 2026-08-07) and steady adoption (159164 monthly downloads). Supports Python 3.10 through 3.14, though MuJoCo may not build on 3.14 yet. License in practice: Apache-2.0 permissive license allows commercial and private use with minimal restrictions. Quickstart: pip install mjviser import mujoco from mjviser import Viewer model = mujoco.MjModel.from_xml_path("robot.xml") data = mujoco.MjData(model) Viewer(model, data).run() Requires MuJoCo to be installed and buildable on your Python version; MuJoCo may not build on Python 3.14 yet. Verify before relying: - Whether mouse interaction (body clicking/dragging) and keyboard callbacks are planned or require upstream Viser changes. - Performance characteristics with large models or multi-environment simulations beyond the provided examples. ## Package facts - License: Apache-2.0 (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 159.2K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags mujoco simulation viewer, web-based physics visualization, mujoco browser interface, robotics simulation viewer, interactive mujoco debugger, robotics, physics-simulation, web-visualization [View on SkillFed](https://skillfed.io/packages/mjviser) · [View on PyPI](https://pypi.org/project/mjviser/)