Skip to content
SPECIFICTION
Get listed

Maturin

maturin.rs

WindowsmacOSLinux
Visit maturin.rs
Spec score 7.5 #18 of 27 in Python Package Managers

Spec sheet

Purpose
Maturin builds and publishes Rust crates with Python bindings, as well as Rust binaries, as Python packages.Read 7 Oct 2026 · maturin.rs
Integrations
The guide describes integration with tox and recommends using uv to publish packages with `uv publish`.Read 7 Oct 2026 · maturin.rs
License
Maturin is licensed under either Apache License 2.0 or MIT, at the user's option.Read 7 Oct 2026 · maturin.rs
Bindings
It supports PyO3, cffi, UniFFI, and binary bindings.Read 7 Oct 2026 · maturin.rs
Bindings limitation
For cffi and binary projects, the `bindings` setting is required because Maturin cannot automatically detect those bindings.Read 7 Oct 2026 · maturin.rs
Build commands
Its main commands are `maturin new` to create a configured Cargo project, `maturin build` to build wheels, and `maturin develop` to build and install a module in the current virtual environment.Read 7 Oct 2026 · maturin.rs
Build workflow
The `maturin build` command builds wheels into `target/wheels` by default and does not upload them.Read 7 Oct 2026 · maturin.rs
CI integration
The `maturin generate-ci` command can generate a GitHub Actions workflow for building and publishing release artifacts.Read 7 Oct 2026 · maturin.rs
Development limit
The guide notes that `maturin develop` is faster but does not support every feature available when installing after `maturin build`.Read 7 Oct 2026 · maturin.rs
Development workflow
The `maturin develop` command builds a crate and installs it as a Python module in the current virtual environment.Read 7 Oct 2026 · maturin.rs
Installation
The guide lists binary downloads, pipx, uv, and pip as installation options.Read 7 Oct 2026 · maturin.rs
Linux compatibility
For widely usable Linux wheels, the guide says to use a manylinux Docker image or build with zig; Maturin checks generated libraries and assigns wheel platform tags.Read 7 Oct 2026 · maturin.rs
Linux wheel compatibility
For widely usable Linux wheels on PyPI, the guide says to use a manylinux Docker image or build with zig.Read 7 Oct 2026 · maturin.rs
Operating systems
The guide lists Windows, Linux, macOS, and FreeBSD as supported wheel-building platforms.Read 7 Oct 2026 · maturin.rs
Package publishing
Maturin can upload built packages to PyPI.Read 7 Oct 2026 · maturin.rs
Packaging
Maturin can build source distributions when configured through `pyproject.toml` and invoked with `--sdist`.Read 7 Oct 2026 · maturin.rs
Platform releases
Downloadable binaries are built for Windows, Linux, and macOS, with listed architectures including x86, ARM, and PowerPC variants.Read 7 Oct 2026 · maturin.rs
Publishing
The guide says Maturin can upload packages to PyPI and recommends `uv publish` for publishing packages built with `maturin build`.Read 7 Oct 2026 · maturin.rs
Python interpreters
Maturin has basic PyPy and GraalPy support.Read 7 Oct 2026 · maturin.rs
Python support
The guide says Maturin supports building wheels for Python 3.8 and later, with basic PyPy and GraalPy support.Read 7 Oct 2026 · maturin.rs
Security and compliance
The guide describes manylinux compatibility checks for Linux wheels; no security certification or compliance program is stated on the pages reviewed.Read 7 Oct 2026 · maturin.rs
Supported Python versions
Maturin supports building wheels for Python 3.8 and later.Read 7 Oct 2026 · maturin.rs
Trusted publishing
Generated GitHub Actions workflows can use PyPI trusted publishing with OpenID Connect instead of an API token.Read 7 Oct 2026 · maturin.rs

Where Specifiction places it

Alternatives to MaturinAll alternatives →