PyO3
Hacker ApprovedThe most recommended of 3 binding generators
People recommend PyO3 for writing Python extensions in Rust, citing safe wrappers, easy use and a large ecosystem. Critics say it adds bloat and is far from perfect.
People recommend PyO3 for writing Python extensions in Rust, citing safe wrappers, easy use and a large ecosystem. Critics say it adds bloat and is far from perfect.
17 people gave an opinion
- recommend it
- 16
- criticize it
- 1
- approval share
- 94%
Recommended in 10 of 13 months
- November 2025: recommended
- December 2025: recommended
- January 2026: recommended
- February 2026: recommended
- March 2026: recommended
- April 2026: not recommended
- May 2026: recommended
- June 2026: recommended
- July 2026: recommended
- August 2026: not recommended
- September 2026: recommended
- October 2026: recommended
- November 2026: not recommended (month in progress)
Why it carries the badge
- 16 people recommend itNeeds 10 or more, met.
- 16 recommenders for every criticNeeds 2 to 1 or better, met.
- Recommended in 10 of 13 monthsNeeds 4 or more, met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Safe and easier than alternatives
“PyO3 is designed in such a way that it's a lot easier to avoid many of these issues”
Comment from 8 Mar 2026 in “Notes on Writing WASM” “PyO3 to just write "safe" wrappers on top of cpython APIs”
Comment from 8 Mar 2026 in “Notes on Writing WASM” “pyo3 is safer and easier to use to build said modules”
Comment from 13 Sep 2026 in “Libraries Run Rust Inside Python (With PyO3)” - Comment from 8 Mar 2026 in “Notes on Writing WASM”
Widely used, strong ecosystem
“PyO3 is an extraordinarily popular project, and there are (tens of?) thousands of Python packages using it.”
Comment from 24 Oct 2026 in “Bringing uv and ty together” “So basically well known and very good Open Source”
Comment from 22 Dec 2025 in “Show HN: Rust/WASM lighting data toolkit – parses legacy formats, generates SVGs” “PyO3's excellent ecosystem”
Comment from 2 Jan 2026 in “WebAssembly as a Python Extension Platform” Gradual path from Python to Rust
“I've personally had great success using python, then gradually rewriting the tool I have with py03”
Comment from 17 May 2026 in “Mercurial, 20 years and counting: how are we still alive and kicking? [video]” “Writing a Python extension would a good way to dip your toes into Rust”
Comment from 10 Jul 2026 in “Interview with Mitchell Hashimoto about Ghostty and Zig” “Then have it re-write any remaining slow parts in Rust with Py03.”
Comment from 28 Oct 2026 in “Python's experimental JIT to be removed”
What people warn about
Each mark is one comment
Adds bloat and other issues
“Having glue libraries like pyo3 makes it good in rust. But that introduces bloat and other issues.”
Comment from 23 Feb 2026 in “What it means that Ubuntu is using Rust” Far from perfect
“PyO3 is far from perfect but decently usable”
Comment from 13 Sep 2026 in “Libraries Run Rust Inside Python (With PyO3)”
Other binding generators people recommend
The two most recommended other binding generators, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
| Product | Recommend | Criticize | Approval | Months | Owned | Badge |
|---|---|---|---|---|---|---|
| PyO3This page | 16 | 1 | 94% | 10 | — | Approved |
| UniFFI | 9 | 0 | 100% | 6 | — | — |
| flutter_rust_bridge | 6 | 0 | 100% | 8 | — | — |
What people said
All 20 comments that mention it, newest first. Each links to the original comment.
“Then have it re-write any remaining slow parts in Rust with Py03.”
“PyO3 is an extraordinarily popular project, and there are (tens of?) thousands of Python packages using it.”
“It should be good to go, but of course I don’t know what your codebase looks like”
“PyO3 is far from perfect but decently usable”
“PyO3 is just a really simple interface generator in comparison”
“pyo3 is safer and easier to use to build said modules”
“Maturin/PyO3 can build "manylinux" binaries automatically, which helps with the Linux ABI diaspora.”
“PyO3 is a really great example of that.”
“Writing a Python extension would a good way to dip your toes into Rust”
“Fantastic to have PyO3/Maturin guides too”
“I've personally had great success using python, then gradually rewriting the tool I have with py03”
“write static python and transpile to rust pyO3 which is at the top of the ladder”
“PyO3 to just write "safe" wrappers on top of cpython APIs”
“PyO3 is designed in such a way that it's a lot easier to avoid many of these issues”
“Why is PyO3 so much nicer to use than wasm-bindgen?”
“Having glue libraries like pyo3 makes it good in rust. But that introduces bloat and other issues.”
“The projects that really stand out to me are pyo3 (Replace c++ python modules with rust)”
“PyO3's excellent ecosystem”
“So basically well known and very good Open Source”
“PyO3 has a nice collection of APIs for holding/releasing the GIL”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.