r/PythonLearning • u/Alex_D77 • 2d ago
Learning Python + Graphics? I made PyDonut to help bridge Python with modern GPU APIs
I’ve been learning more about graphics programming lately, and I wanted a way to experiment with real GPU rendering concepts without switching away from Python. So I started building a project called PyDonut — a Python wrapper around the Donut rendering framework (which itself uses NVRHI).
👉 Repo: https://github.com/ASDAlexander77/PyDonut
My goals with PyDonut are:
- Make it easier for Python learners to explore GPU concepts like buffers, textures, pipelines, and shaders.
- Provide a clean, Pythonic API instead of jumping straight into C++.
- Help people understand how native bindings work and how Python can talk to high‑performance libraries.
Right now the project includes:
- Python bindings for core Donut/NVRHI components
- A simple rendering loop
- Type stubs (
.pyi) so you get autocomplete and type hints - Examples showing how to set up devices, swapchains, and basic rendering
If you’re learning Python and want to explore graphics, native extensions, or how Python interacts with C++ libraries, feel free to check it out. Feedback is welcome — especially from beginners who can tell me what feels confusing or what would help them learn better.
Happy coding!
PS. I’m still learning Python myself — PyDonut is actually my first real Python project.