indygreg/PyOxidizer
indygreg/PyOxidizer has 6,159 GitHub stars and 257 forks. GitHot measured +2 in 7 days. Last checked 2026-11-09 02:00 UTC. Last push 2024-12-24.
Comment ces chiffres sont mesurés
A modern Python application packaging and distribution tool
Progression mesurée des étoiles
- in 24h
- Mise à jour retardée
- in 7 days
- +2
- in 15 days
- Mise à jour retardée
- in 1 month
- Mise à jour retardée
Variations nettes sur des périodes qui se chevauchent, pas des totaux quotidiens. Les mesures absentes restent vides. Les étoiles indiquent l’intérêt, pas la qualité.
README.md
OriginalPyOxidizer
PyOxidizer is a utility for producing binaries that embed Python.
The over-arching goal of PyOxidizer is to make complex packaging and
distribution problems simple so application maintainers can focus on
building applications instead of toiling with build systems and packaging
tools.
PyOxidizer is capable of producing a single file executable - with
a copy of Python and all its dependencies statically linked and all
resources (like .pyc files) embedded in the executable. You can
copy a single executable file to another machine and run a Python
application contained within. It just works.
PyOxidizer exposes its lower level functionality for embedding
self-contained Python interpreters as a tool and software library. So if
you don't want to ship executables that only consist of a Python
application, you can still use PyOxidizer to e.g. produce a library
containing Python suitable for linking in any application or use
PyOxidizer's embedding library directly for embedding Python in a
larger application.
The Oxidizer part of the name comes from Rust: executables produced
by PyOxidizer are compiled from Rust and Rust code is responsible
for managing the embedded Python interpreter and all its operations.
If you don't know Rust, that's OK: PyOxidizer tries to make the existence
of Rust nearly invisible to end-users.
While solving packaging and distribution problems is the primary goal
of PyOxidizer, a side-effect of solving that problem with Rust is
that PyOxidizer can serve as a bridge between these two languages.
PyOxidizer can be used to easily add a Python interpreter to any
Rust project. But the opposite is also true: PyOxidizer can also be
used to add Rust to Python. Using PyOxidizer, you could bootstrap
a new Rust project which contains an embedded version of Python and your
application. Initially, your project is a few lines of Rust that
instantiates a Python interpreter and runs Python code. Over time,
functionality could be (re)written in Rust and your previously
Python-only project could leverage Rust and its diverse ecosystem. Since
PyOxidizer abstracts the Python interpreter away, this could all be
invisible to end-users: you could rewrite an application from Python to
Rust and people may not even know because they never see a libpython,
.py files, etc.
Project Info
:house: The official home of the PyOxidizer project is
https://github.com/indygreg/PyOxidizer.
:notebook_with_decorative_cover: Documentation (generated from the docs/ directory) is available
at https://gregoryszorc.com/docs/pyoxidizer/main/.
:speech_balloon: The pyoxidizer-users mailing list is a forum for users to discuss all things PyOxidizer.
:moneybag: If you want to financially contribute to PyOxidizer, do so via GitHub Sponsors or on Patreon.
Explorer des projets similaires
codecrafters-io/build-your-own-x
Maîtrisez la programmation en recréant de zéro vos technologies préférées.
561,248 étoilespublic-apis/public-apis
Une liste collective d'API gratuites
497,506 étoilesmorluto/rea
Rétro-ingénierie de n'importe quoi avec des agents, du comportement des applications jusqu'aux binaires natifs.
445,834 étoilesopenclaw/openclaw
L'IA qui fait vraiment les choses. Tout système d'exploitation, toute plateforme. À la manière du homard. 🦞
394,232 étoiles