Our take
- Activity
- 20
- Community
- 4
- Issues
- 21
- Pull requests
- 21
-1 stars in the last 8 days
- Fewer contributors than 92% of the projects we track
Overview
pyfuze packages a Python project into an executable, combining the application with Python and its dependencies or arranging for them to be downloaded at runtime. It is built on cosmopolitan and uv, and offers different packaging modes for projects with different portability and compatibility needs.
It is useful when you want to distribute a Python tool without asking users to set up a Python environment themselves. The main choice is between a larger package that runs on its build platform, a smaller package that needs internet access, and a portable package with narrower dependency support.
Key Features
- Bundle mode includes Python and dependencies, and runs on the platform where it was packaged.
- Online mode creates a smaller cross-platform executable that downloads Python and dependencies at runtime.
- Portable mode creates a standalone executable without extraction or an internet connection, for pure Python projects and dependencies.
- Accepts project dependency information from
requirements.txt,pyproject.toml, oruv.lock. - Supports selecting an entry file and including or excluding project files.
- Allows configuration of the runtime extraction path and environment variables.
- Offers a Windows option to hide the console window for GUI applications.
Use Cases
- Python developers can distribute command-line scripts to users who do not have Python installed.
- Application maintainers can use bundle mode when platform-specific packaging and compatibility matter more than executable size.
- Teams sharing tools across supported operating systems can use online mode when users have internet access at first run.
- Developers of pure Python utilities can use portable mode when a standalone executable and offline use are priorities.
Getting Started
Install with pip:
pip install pyfuze
See the README for mode details and usage examples.
Considerations
- Bundle mode is platform-specific and can produce large executables.
- Online mode requires an internet connection at runtime to obtain Python and dependencies.
- Portable mode supports only pure Python projects and dependencies, and uses Python 3.12.3 according to the README.
- The README describes expected cross-platform support for macOS ARM64 and AMD64, Linux AMD64, and Windows AMD64; portability depends on the packaging mode and its underlying platform support.
- pyfuze does not encrypt or obfuscate application code.
- The repository was created in 2025 and has a small number of open issues; assess suitability for production distribution against your target project and platforms.
Found this useful?
Share it with someone who would like pyfuze.