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

This version

0.1.1

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.1.tar.gz (2.4 MB view details)

Uploaded Source

Built Distribution

viser-0.1.1-py3-none-any.whl (2.4 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for viser-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5a6db5612414218ebbbe2d72f82154a7043fd098bf21ec325585eba59cd40e60
MD5 e0ca92856f7bb4e41941803a6e7a993f
BLAKE2b-256 a9052369fce103f9f4a41462bcdae9217d161061e630141a0be7a70267b71b65

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for viser-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 192ff56c0f76237692fa1661dd23c174206ba5da3bc22302d170e4bfb897de72
MD5 a2e5377a4cbafc0030abf7ac7d74c40e
BLAKE2b-256 57aad5c72f60876801a243406bcb46352b3134d5da81b2defef56c55430af0a7

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