Skip to main content

llandau

Scientific slides drawn live, with interactive 3D trajectories inside them. A deck is written like a manim scene and plays straight from the code (wgpu): no videos, no render step. Everything on screen is live while you present: step back, scrub, turn a molecule, change its rendering. The same plots save as paper figures.

pip install llandau            # macOS and Linux wheels; text needs the typst CLI

A deck

a deck playing: a plot drawing itself, a formula being written, a histogram fading in

from llandau import *

class Results(Deck):
    def construct(self):
        self.title("sampling a double well")
        ax = Plot(R.body.left, xlabel="$x$", ylabel="energy")
        profile = ax.plot(x, energy, label="$U(x)$")
        self.reveal(ax)                                   # frame and ticks
        self.reveal(profile, anim=Create)                 # the line draws itself
        self.reveal(place(text("$p(x) prop e^(-U \\/ k T)$"), R.body.right), anim=Write)

SLIDES = order(Results)

llandau play examples/slides.py presents it: the arrows step forward and back, the wheel scrubs through every animation, F goes full screen. llandau pdf and llandau png export one page per step.

3D trajectories

trp-cage's NMR models playing: all atoms in flat shading, then the protein tube and side chains, lit

viewer = Viewer().load(positions, numbers, roles=roles)    # (frames, atoms, 3), (atoms,)
viewer.style = "protein"
viewer.set_trails(segment_ids=segment_ids(t, boundaries))
viewer.color_by("deviation", np.linalg.norm(positions - positions[-1], axis=-1))
explore(viewer, plots={"rmsd": rmsd}, t=t)                 # a window; ? shows every key

python examples/protein.py is this, on trp-cage's NMR models from the PDB.

The window is interactive: drag to turn, scroll through the frames, and every setting has a key (lit or flat shading, protein or atoms, layers, a light or dark theme); R records what you do into an MP4. A deck shows the same viewer live inside a slide, just as interactive, with self.live("name", R.body.right, camera={"azimuth": 30}, frame=60).

Paper figures

a figure saved by llandau: a damped oscillation, its envelope and noisy samples with error bars

fig, ax = subplots(figsize=(3.4, 2.2))                      # inches, points, Typst math
ax.plot(t, signal, color="k", label="model")
ax.plot(t, envelope, color="#888888", ls="--", label="envelope")
ax.errorbar(ts, samples, yerr=0.05, fmt="o", ms=4, capsize=2, label="samples")
ax.set_xlabel("time $t$ (ps)")
ax.legend()
fig.savefig("figure.pdf")                                   # or .svg, .png

examples/ has the decks and figures above; the modules' docstrings document the rest (python -c "import llandau; help(llandau)").

Metadata

Release files for llandau 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for llandau 0.5.0
File Size Uploaded Provenance
llandau-0.5.0.tar.gz 2.4 MB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for llandau 0.5.0
File
llandau-0.5.0-cp310-abi3-manylinux_2_28_x86_64.whl CPython 3.10 abi3 Linux glibc 2.28+ x86-64 Details
llandau-0.5.0-cp310-abi3-manylinux_2_28_aarch64.whl CPython 3.10 abi3 Linux glibc 2.28+ ARM64 Details
llandau-0.5.0-cp310-abi3-macosx_11_0_x86_64.whl CPython 3.10 abi3 macOS 11.0+ x86-64 Details
llandau-0.5.0-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details

Total release size: 29.9 MB

Release files / llandau-0.5.0.tar.gz

Download URL llandau-0.5.0.tar.gz
Size 2.4 MB
Tags Source
SHA-256 checksum
How to use checksums
85c194f6abc6a2f82c8746daae0a9f9b5944763696d97a646a6ec113daf3edda
BLAKE2b-256 checksum
How to use checksums
b282e29bbe4d070d40b3e0dc0c0376767619b84e5fcc6220ced6d1c006401458
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / llandau-0.5.0-cp310-abi3-manylinux_2_28_x86_64.whl

Download URL llandau-0.5.0-cp310-abi3-manylinux_2_28_x86_64.whl
Size 8.1 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
0b80f2a89a822c587874f7c3afc955f6d00a541c9afd4baf387d63523d9b193f
BLAKE2b-256 checksum
How to use checksums
181e450b9633dff6a9791d9d2404ee875bbaed7ae5553e47a25e34d18b2e1e25
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / llandau-0.5.0-cp310-abi3-manylinux_2_28_aarch64.whl

Download URL llandau-0.5.0-cp310-abi3-manylinux_2_28_aarch64.whl
Size 7.6 MB
Tags CPython 3.10 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
31b2e37047cb38cc90c15a8ab4d9712b4b94bef14399e0be31721570eaddd962
BLAKE2b-256 checksum
How to use checksums
988a971a17adc53ef2b212acd5f124c30e242dde03bd4731155b7d70240b6a5f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / llandau-0.5.0-cp310-abi3-macosx_11_0_x86_64.whl

Download URL llandau-0.5.0-cp310-abi3-macosx_11_0_x86_64.whl
Size 6.1 MB
Tags CPython 3.10 abi3 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
d246a9190e69a4b87e77f4eb68d4ed047e59dd21dcb62c670d3660fb702f9906
BLAKE2b-256 checksum
How to use checksums
ebc65762b39deb1ad68567382f8892b7eb36e22dfb811b45954dac201b6ad333
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / llandau-0.5.0-cp310-abi3-macosx_11_0_arm64.whl

Download URL llandau-0.5.0-cp310-abi3-macosx_11_0_arm64.whl
Size 5.7 MB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2459fc022686b7a15c99e4e44d656d780898d3a7c227fb49f94c9e434bd8941e
BLAKE2b-256 checksum
How to use checksums
80226c7b92700269cdd6587e412526386d98a05c78116cfd2ae801d5ce40ebb6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Security for llandau 0.5.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 5 files in this release have been uploaded with provenance metadata.

Select from 5 files

Attestation for llandau-0.5.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page