Skip to main content

Rust-backed Python library for reading and writing PPTX files.

Project description

slidex

Rust-backed Python library for reading, modifying, and generating PowerPoint (.pptx) files.

Status

Early development. APIs may change.

What it does (today)

  • Open and save PPTX files
  • Enumerate slides and shapes
  • Read/write text frames
  • Replace text across a slide or presentation

Install (from source)

slidex is not published yet. Install from source with:

uv venv
uv pip install maturin
uv run maturin develop

Usage

Basic read/modify/write flow:

from slidex import Presentation

pres = Presentation.open("deck.pptx")
pres.replace_text("{{quarter}}", "Q1 2026")

slide = pres.slides[0]
shape = slide.shapes[0]
text = shape.as_text()
text.text = "Hello from slidex"

pres.save("updated.pptx")

Create a new deck from scratch:

from slidex import Presentation

pres = Presentation.new()
slide = pres.add_slide()
slide.add_textbox("Hello from slidex")
pres.save("new_deck.pptx")

Documentation

  • docs/DESIGN.md
  • docs/ARCHITECTURE.md
  • docs/API.md

Contributing

See CONTRIBUTING.md for developer setup, tests, and fixture tooling.

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

slidex-0.1.0.tar.gz (121.2 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

slidex-0.1.0-cp314-cp314-macosx_11_0_arm64.whl (709.4 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

slidex-0.1.0-cp312-cp312-win_amd64.whl (749.1 kB view details)

Uploaded CPython 3.12Windows x86-64

slidex-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (969.1 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

Details for the file slidex-0.1.0.tar.gz.

File metadata

  • Download URL: slidex-0.1.0.tar.gz
  • Upload date:
  • Size: 121.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.11.5

File hashes

Hashes for slidex-0.1.0.tar.gz
Algorithm Hash digest
SHA256 470f7e970d585cfbd7e9a4f0a2fe15d71040e883ee46f227ce12bd7d49aa6d9f
MD5 b57760620a05b994a4cb65cd64401a98
BLAKE2b-256 61fcd36854c6c9fb358bf9f54ecf007ba7b9f7b8359d8ebde6dd5d224f27c19c

See more details on using hashes here.

File details

Details for the file slidex-0.1.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for slidex-0.1.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8108caa4e1194c8f2f67ecb0448cd27ed1735f4f996da83a8373c00452b463c7
MD5 cab53a1816f58aeff6e216c0b8af0151
BLAKE2b-256 a9416ab12e2624b82d6a2f0fea61ce71d64435e3843c94b3c7f97053d399c919

See more details on using hashes here.

File details

Details for the file slidex-0.1.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: slidex-0.1.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 749.1 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.11.5

File hashes

Hashes for slidex-0.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9bdfc65aa6689a5ac80e738cc76c26bcb82763672c02259e8cea15ad1a2e5065
MD5 2a197a9beb26ac970618894bd82c43b5
BLAKE2b-256 1a5690278ba69fee5c92e1d4f447ca1727449f75189db764d7d6290b4ec63582

See more details on using hashes here.

File details

Details for the file slidex-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for slidex-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a85b751f528ae722fb27984b7dca25752b17377ab484e57f0210cebe84de159e
MD5 33d85cffa06336b35cb30133283f78f8
BLAKE2b-256 4ef81cc2032e6cbed9a1db89ab590dbef9025902d33b946ae9ff17de2a521524

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page