Skip to main content

3D visualization + Python

Project description

viser

pip install viser   •   [ API Reference ]

pyright mypy typescript pypi


viser is a library for interactive 3D visualization + Python, inspired by tools like Pangolin, rviz, and meshcat.

Warning viser is in a working state, but under development. Large changes may be made, and backwards compatibility can't yet be guaranteed.

As a standalone visualization tool, viser features include:

  • Web interface for easy use on remote machines.
  • Python API for sending 3D primitives to the browser.
  • Python-configurable inputs: buttons, checkboxes, text inputs, sliders, dropdowns, gizmos.
  • Support for multiple panels and view-synchronized connections.

The viser.infra backend can also be used to build custom web applications (example: the Nerfstudio viewer). It supports:

  • Websocket / HTTP server management, on a shared port.
  • Asynchronous server/client communication infrastructure.
  • Client state persistence logic.
  • Typed serialization; synchronization between Python dataclass and TypeScript interfaces.

Running examples

# Clone the repository.
git clone https://github.com/nerfstudio-project/viser.git

# Install the package.
# You can also install via pip: `pip install viser`.
cd ./viser
pip install -e .

# Run an example.
pip install -e .[examples]
python ./examples/4_gui.py

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

Setup (client development)

This is only needed for client-side development. The automatically hosted viewer should be sufficient otherwise.

cd ./viser/viser/client
yarn
yarn start

Demos

Interactive SMPL-X Example

https://user-images.githubusercontent.com/6992947/228734499-87d8a12a-df1a-4511-a4e0-0a46bd8532fd.mov

Interactive NeRF rendering

(code not released)

https://user-images.githubusercontent.com/6992947/232163875-ff788455-f074-4bd3-9154-5330b5ed4733.mov

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

viser-0.1.0.tar.gz (2.0 MB view details)

Uploaded Source

Built Distribution

viser-0.1.0-py3-none-any.whl (2.0 MB view details)

Uploaded Python 3

File details

Details for the file viser-0.1.0.tar.gz.

File metadata

  • Download URL: viser-0.1.0.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.17

File hashes

Hashes for viser-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f667e97bed526bcae5b93f66aa0545b02156e91d86208424a258aaa61fa8afad
MD5 e951353b6fc21bbfcb88e467f8adb57e
BLAKE2b-256 d34e7cee71ad065c7357b7e2fb9516e44785f25b2b3b6ac10815884fb4fd5389

See more details on using hashes here.

File details

Details for the file viser-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: viser-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.17

File hashes

Hashes for viser-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 33fd93077577021d9739aaa4238726f6c4823055876618d96d232e413dfdc748
MD5 ed29d9cfff10b3ebe5a0711b5fc0d1c1
BLAKE2b-256 fa5d4b738e7d904b277e4b2390b247d85b92d1153de7e5e62d0be0de97d38311

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page