Skip to content

pculbertson-bdai/viser

 
 

Repository files navigation

viser logo viser viser logo

pyright typescript-compile codecov

viser is a library for interactive 3D visualization in Python.

Features include:

  • API for visualizing 3D primitives
  • GUI building blocks: buttons, checkboxes, text inputs, sliders, etc.
  • Scene interaction tools (clicks, selection, transform gizmos)
  • Programmatic camera control and rendering
  • An entirely web-based client, for easy use over SSH!

For usage and API reference, see our documentation.

Installation

You can install viser with pip:

pip install viser

To include example dependencies:

pip install viser[examples]

After an example script is running, you can connect by navigating to the printed URL (default: http://localhost:8080).

See also: our development docs.

Examples

Point cloud visualization

record3d.mp4

Source: ./examples/07_record3d_visualizer.py

Gaussian splatting visualization

gaussian_splat.mp4

Source: WangFeng18/3d-gaussian-splatting and heheyas/gaussian_splatting_3d.

SMPLX visualizer

smpl_example.mp4

Source: ./example/08_smpl_visualizer.py

Acknowledgements

viser is heavily inspired by packages like Pangolin, rviz, meshcat, and Gradio. It's made possible by several open-source projects.

The web client is implemented using React, with:

The Python API communicates via msgpack and websockets.

About

Web-based 3D visualization + Python

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 69.9%
  • TypeScript 24.7%
  • JavaScript 4.2%
  • C++ 0.6%
  • CSS 0.5%
  • HTML 0.1%