1 unstable release

new 0.82.0-alpha.0 Dec 26, 2024

#177 in Visualization

Download history 135/week @ 2024-12-23

135 downloads per month

MIT/Apache

1MB
11K SLoC

Rust 9K SLoC // 0.1% comments JavaScript 2K SLoC // 0.0% comments

Visualizing the Tiered Commitment Tree

Penumbra's Tiered Commitment Tree is a merkle quadtree used to store cryptographic commitments to shielded state. This crate provides interactive visualizations for understanding how the tree works. To see a talk using these visualizations to demonstrate the functionality of the tree, see: https://www.youtube.com/watch?v=mHoe7lQMcxU.

Interactive Visualization

To run the interactive visualization in your browser, run:

cargo run --release --bin tct-live-edit

Then visit the page http://0.0.0.0:8080 in your browser (the animations are smoothest and fastest in Chromium based browsers).

Various options can be configured; for details, see:

cargo run --release --bin tct-live-edit -- --help

Randomized Step-By-Step Non-Interactive Visualization

You can also simulate a sequence of operations on the tree and render each step as an SVG using:

cargo run --release --bin tct-visualize

See its --help options for details about how to configure the simulation.

Dependencies

~72MB
~1.5M SLoC