Skip to main content

llandau

Scientific slides drawn live, with interactive geometric models 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.

Geometric models

trp-cage's NMR models playing in a wgpu view: 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.

A model is drawn with wgpu, and 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.1

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.1
File Size Uploaded Provenance
llandau-0.5.1.tar.gz 2.4 MB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for llandau 0.5.1
File
llandau-0.5.1-cp310-abi3-manylinux_2_28_x86_64.whl CPython 3.10 abi3 Linux glibc 2.28+ x86-64 Details
llandau-0.5.1-cp310-abi3-manylinux_2_28_aarch64.whl CPython 3.10 abi3 Linux glibc 2.28+ ARM64 Details
llandau-0.5.1-cp310-abi3-macosx_11_0_x86_64.whl CPython 3.10 abi3 macOS 11.0+ x86-64 Details
llandau-0.5.1-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.1.tar.gz

Download URL llandau-0.5.1.tar.gz
Size 2.4 MB
Tags Source
SHA-256 checksum
How to use checksums
2579fc76628951a7b80b2e6f28308f60af3f903b50a6f823f6a9d8b24feee30a
BLAKE2b-256 checksum
How to use checksums
fd4165cb19daf456673eeae1f53f56a8574f081a7750c89d663a2d083fb78431
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.1-cp310-abi3-manylinux_2_28_x86_64.whl

Download URL llandau-0.5.1-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
dc6adeb01f1fbd4dc39ee2d15de8809a19e6f4f0cef407028ba38d0d934e4db6
BLAKE2b-256 checksum
How to use checksums
330930f8bd648628af9b0f80ad1c401b7fc30e4bf2657a8c4cd65d5a972fd91d
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.1-cp310-abi3-manylinux_2_28_aarch64.whl

Download URL llandau-0.5.1-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
eab5a57225c2c364917cc3048cfbafccabaddd78f92361af154f2da920cc530e
BLAKE2b-256 checksum
How to use checksums
760b025311f8f544b29063c42c0d9ed15f7d3483201ee7a4e7cbb349364862a5
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.1-cp310-abi3-macosx_11_0_x86_64.whl

Download URL llandau-0.5.1-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
48e7389ecd16379024ae402c5ebb5db2d194b9685eb30921584429b008148657
BLAKE2b-256 checksum
How to use checksums
74bcc41788718719205a1d6d0759e5507518ff1605a95f2b5e540e6f249bc5a8
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.1-cp310-abi3-macosx_11_0_arm64.whl

Download URL llandau-0.5.1-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
76e772c599030679b372c0de9f6350d4bd9b9ba281971ef8f62402ad240ce497
BLAKE2b-256 checksum
How to use checksums
e94a670fc81689add93b166be7a33fdf3147a1ed3e3f843d3058cbb16ac0bfcb
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.1

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.1.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