Skip to main content

No project description provided

Project description

Nelsie

Build

Nelsie allows you to create slides programmatically using Python. It is a library with a Python API and a renderer written in Rust. The output is a PDF file or a set of SVG/PNG files.

There is no DSL or GUI; presentations created with Nelsie are fully programmed in Python. We believe that creating presentations in a programmable way makes the process of creating slides smoother and more reliable.

Nelsie focuses on controlling what the audience sees, so you can continuously reveal fragments of the slide, or simply manage which parts are highlighted.

Quick links

Hello world

from nelsie import SlideDeck

deck = SlideDeck()

@deck.slide()
def hello_world(slide):
    slide.text("Hello world!")

deck.render("slides.pdf")

Steps revealing

Nelsie allows you to easily reveal parts of slides:

@deck.slide()
def steps_demo(slide):
    semaphore = slide.box(width=100, height=300, bg_color="gray")
    semaphore.box(
        y=InSteps([20, 110, 210]),  # Set "y" coordinate for each step
        width=80,
        height=80,
        bg_color=InSteps(["red", "orange", "green"]),  # Set color for each step
    )

    slide.code(
        """
fn main() {
    // Print text to the console.
    println!()"Hello World!");
}
""",
        "Rust",
        show=4,  # Show in 4. step
        m_top=80,
    )

The code generates four PDF pages:

Installation

$ pip install nelsie

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nelsie-0.7.0.tar.gz (5.1 MB view hashes)

Uploaded Source

Built Distributions

nelsie-0.7.0-cp39-abi3-win_amd64.whl (2.8 MB view hashes)

Uploaded CPython 3.9+ Windows x86-64

nelsie-0.7.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB view hashes)

Uploaded CPython 3.9+ manylinux: glibc 2.17+ x86-64

nelsie-0.7.0-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (4.7 MB view hashes)

Uploaded CPython 3.9+ manylinux: glibc 2.17+ s390x

nelsie-0.7.0-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (3.8 MB view hashes)

Uploaded CPython 3.9+ manylinux: glibc 2.17+ ppc64le

nelsie-0.7.0-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.6 MB view hashes)

Uploaded CPython 3.9+ manylinux: glibc 2.17+ ARMv7l

nelsie-0.7.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.5 MB view hashes)

Uploaded CPython 3.9+ manylinux: glibc 2.17+ ARM64

nelsie-0.7.0-cp39-abi3-manylinux_2_12_i686.manylinux2010_i686.whl (3.6 MB view hashes)

Uploaded CPython 3.9+ manylinux: glibc 2.12+ i686

nelsie-0.7.0-cp39-abi3-macosx_11_0_arm64.whl (2.8 MB view hashes)

Uploaded CPython 3.9+ macOS 11.0+ ARM64

nelsie-0.7.0-cp39-abi3-macosx_10_12_x86_64.whl (3.0 MB view hashes)

Uploaded CPython 3.9+ macOS 10.12+ x86-64

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