viser-keyframe
A fork of viser with additional features for building keyframe editors and multi-column GUI layouts.
What's New in viser-keyframe
This fork adds the following features on top of the original viser:
1. Multi-Column GUI Layouts
Create side-by-side control panels with gui.add_columns():
import viser
server = viser.ViserServer()
# Create a 3-column layout
columns = server.gui.add_columns(3)
# Add controls to each column
with columns.column(0):
server.gui.add_slider("Left Arm", 0, 1, 0.5)
with columns.column(1):
server.gui.add_button("Center")
with columns.column(2):
server.gui.add_slider("Right Arm", 0, 1, 0.5)
You can also specify custom column widths:
columns = server.gui.add_columns(3, widths=[0.3, 0.4, 0.3])
2. Slider Precision Fix
Fixes floating-point display noise in sliders (e.g., 0.30000000001 → 0.3), with improved input validation and dynamic width for high-precision values.
Installation
pip install viser-keyframe
Usage
This package is a drop-in replacement for viser. Just install it and import as usual:
import viser
server = viser.ViserServer()
# All original viser features work
server.scene.add_frame("/world")
# Plus the new multi-column layout
columns = server.gui.add_columns(2)
Original Viser Features
All features from the original viser are included:
- 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
- Web-based client for easy use over SSH
For full documentation, see the original viser docs: https://viser.studio
Credits
This package is a fork of viser by the Nerfstudio team.
To cite the original viser project:
@misc{yi2025viser,
title={Viser: Imperative, Web-based 3D Visualization in Python},
author={Brent Yi and Chung Min Kim and Justin Kerr and Gina Wu and Rebecca Feng and Anthony Zhang and Jonas Kulhanek and Hongsuk Choi and Yi Ma and Matthew Tancik and Angjoo Kanazawa},
year={2025},
eprint={2507.22885},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2507.22885},
}
License
MIT License (same as original viser)
Metadata
Release files for viser-keyframe 1.0.20
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| viser_keyframe-1.0.20.tar.gz | 29.0 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| viser_keyframe-1.0.20-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 58.2 MB
Release files / viser_keyframe-1.0.20.tar.gz
| Download URL | viser_keyframe-1.0.20.tar.gz |
|---|---|
| Size | 29.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4085de74f8fd51a8a097ba91dee272519a7dc9b6ac750c18b06c4254e382dd96
|
|
BLAKE2b-256 checksum How to use checksums |
d9d7348c95c0e817da5623c99904c903504c9ac7eee84350f80eee2cd33d6ebf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.18
|
Release files / viser_keyframe-1.0.20-py3-none-any.whl
| Download URL | viser_keyframe-1.0.20-py3-none-any.whl |
|---|---|
| Size | 29.1 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a065877fc9090748e4c4b56c97ad8050827f7e009b0be6688eddca348a0e5dcf
|
|
BLAKE2b-256 checksum How to use checksums |
0db9db80d27e2cbf6068106b27994622222cbe87598fd03f9b36d2899f3c9b49
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.18
|