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")
pres.save("updated.pptx")
Basic read, modify with shapes, write flow:
from slidex import Presentation
pres = Presentation.open("deck.pptx")
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.mddocs/ARCHITECTURE.mddocs/API.md
Contributing
See CONTRIBUTING.md for developer setup, tests, and fixture tooling.
Metadata
Release files for slidex 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| slidex-0.1.1.tar.gz | 133.7 kB | Details |
Built distributions (wheels)
Total release size: 9.1 MB
Release files / slidex-0.1.1.tar.gz
| Download URL | slidex-0.1.1.tar.gz |
|---|---|
| Size | 133.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a2acf8403047a2eac08d0244bfc835dce32fbafb0cb20352321ad6f6a1d34699
|
|
BLAKE2b-256 checksum How to use checksums |
5c2e6c73ee7e0c4d077fe82143bb867175cefd672162dbdc6e6aec0bcd52e958
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / slidex-0.1.1-cp313-cp313-win_amd64.whl
| Download URL | slidex-0.1.1-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 771.6 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
09b31d7aaf090ad4048c594d74f0bf8518bc766d933b45fd4a23bb98c04e4db5
|
|
BLAKE2b-256 checksum How to use checksums |
a5e0e618b58685bfb7ace7ee07777dfcbfb4fb8fe9321476ad556cfcc9832406
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / slidex-0.1.1-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | slidex-0.1.1-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 809.7 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
dcbb381e832ddbc27b689f69da124a07becc748337e53c454e3090c2f0f963ad
|
|
BLAKE2b-256 checksum How to use checksums |
d788adaa0838a44fe2858b9d571ac7a35af1f3d7906a7dab3ca295e9b54ce10e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / slidex-0.1.1-cp312-cp312-win_amd64.whl
| Download URL | slidex-0.1.1-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 771.5 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
d47e1036b8b4cbdfe2306b9402e788df7281738a4019859019ec7a9aa92ebac9
|
|
BLAKE2b-256 checksum How to use checksums |
90ff5fba4346f4b43b5231722c8659869f04f686822f4573df4f10cb6099da5c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / slidex-0.1.1-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | slidex-0.1.1-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 809.4 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
1bd83e2d7ff7bbe1b78f121e17f1df86f4800799084eb142ff1aa7cd343998eb
|
|
BLAKE2b-256 checksum How to use checksums |
f771d94194c37cfa6d41919e9386ee604388d96bba1de81e0e36d906fc3c1e5b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / slidex-0.1.1-cp311-cp311-win_amd64.whl
| Download URL | slidex-0.1.1-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 772.2 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
765b0fd8c35723627d3318dda9d14313850957bb0761f58f1dd2a4f70199d0be
|
|
BLAKE2b-256 checksum How to use checksums |
44cfb0100ffe152f5de559cdd2ab08a58c71dc69bb10f75d81b22c8517faf772
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / slidex-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | slidex-0.1.1-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 812.4 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
75ec7f10fe2c76beb82657596b4467d9682f3ab943b7f91863a5682db4cd9382
|
|
BLAKE2b-256 checksum How to use checksums |
f5c7429102380a212d5d79eb93fc3519f205eb3966d9e17520e2aa8a105061bb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / slidex-0.1.1-cp310-cp310-win_amd64.whl
| Download URL | slidex-0.1.1-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 772.1 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
012cce7c09fd31232f7da3b176575f9bc73e418e1a7e91e5eaa15b1f56bad05e
|
|
BLAKE2b-256 checksum How to use checksums |
54898156f7eaa03c68b1f8cdca202cb585c962e501ee9418e05097a9e8d3cbb9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / slidex-0.1.1-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | slidex-0.1.1-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 814.7 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
06675ae38266d0d2d74e84fe2a5b67c4a3819352365dc0dfb5668fb705e30ad0
|
|
BLAKE2b-256 checksum How to use checksums |
b9f3184078c0dadd591ed27975c0376e0b6c50c2c60be721042c1170318e7ebc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / slidex-0.1.1-cp39-cp39-win_amd64.whl
| Download URL | slidex-0.1.1-cp39-cp39-win_amd64.whl |
|---|---|
| Size | 773.8 kB |
| Tags | CPython 3.9 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
8369a95e8763b9573a5e9d3cfb436180b275bc5a60160e5568c14c6697c344a7
|
|
BLAKE2b-256 checksum How to use checksums |
990f46264443e1e6ae42d21a8ee0e461f1faa163f76931bc1e8fd7bb6c271eda
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / slidex-0.1.1-cp39-cp39-macosx_11_0_arm64.whl
| Download URL | slidex-0.1.1-cp39-cp39-macosx_11_0_arm64.whl |
|---|---|
| Size | 817.1 kB |
| Tags | CPython 3.9 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
a8d537a48845a74edb27f9877ebb103bf82cb5dbf68d124c085e77d53359c713
|
|
BLAKE2b-256 checksum How to use checksums |
e127785a7e566f833a9c00dbadbfeda22891adc2f7746cefb5fc48f13d440a92
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / slidex-0.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | slidex-0.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.8 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
019c434b8d7e3531a4b2144e7f83527f86e07cd8d4ac7d1317638953cd21372f
|
|
BLAKE2b-256 checksum How to use checksums |
150d7cf65acf1f2e4fa488bc7fa0bbad1fa5ac425d110bc78646217e5416c920
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|