https://github.com/eegli/pyrust
A minimal skeleton for building Rust applications with a Python frontend
https://github.com/eegli/pyrust
bindings cli maturin pyo3 python rust
Last synced: 29 days ago
JSON representation
A minimal skeleton for building Rust applications with a Python frontend
- Host: GitHub
- URL: https://github.com/eegli/pyrust
- Owner: eegli
- License: mit
- Created: 2025-02-08T12:42:49.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-03-12T18:30:18.000Z (about 2 months ago)
- Last Synced: 2025-03-12T19:32:32.677Z (about 2 months ago)
- Topics: bindings, cli, maturin, pyo3, python, rust
- Language: Rust
- Homepage:
- Size: 30.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PyRust
**A minimal skeleton for building Rust applications with a Python frontend.**
Building native, Rust-based Python modules is not very straightforward, especially since most inter-dependencies are barely explained in the `maturin` tutorial. A full walkthrough for this template is available at TODO.
This template includes:
- Rust as a foundation with support for [Cargo workspaces](https://doc.rust-lang.org/book/ch14-03-cargo-workspaces.html)
- A generated Python package
- A CLI implemented in Rust, exposed to Python
- Stubs to enable Python type hints
- Test setup, including GitHub actions
- Linting and packaging
- A Makefile for convenienceFurther reading and sources:
- https://www.maturin.rs/
- https://pyo3.rs/v0.23.4/Some design choices are inspired by how [Polars](https://github.com/pola-rs/polars) and [uv](https://github.com/astral-sh/uv) create Rust bindings for Python.