
Pyaket
📦 Easy Python to → Fast Executables 📦Links • ✅ Installation • ⭐️ Examples • 📝 Documentation • 🔥 Issues
GitHub • Contact • Changelog • License
Warning
This project is under active development, certain parts are incomplete and not fully tested yet.
🔥 Description¶
📦 Pyaket is a tool that bundles and generates portable executables of your Python projects for many platforms. No more convoluted installation instructions for casual users, give them the exe file they want [1], without reinventing the wheel on alternative packaging solutions.
✨ Major features include:
- Fast installation, automatically manages python, venvs, and dependencies.
- Cross compilation to multiple platforms and architectures made easy #
- Standalone executables without network calls at runtime (planned).
- Iterative development in mind, reinstalls a version if the binary changes.
- Smart and safe, detects partial installs, downloads, unpacks.
- First class monorepo support, bundle many wheels to be installed at runtime.
- Rolling releases are supported, single binary that runs last version always #
- PyTorch optional installation at runtime, automatic backend detection. #
- Version management, easy uninstallation and updates notifications (planned).
- Splash screen to look fancy, custom icons for your app (planned).
🚀 Powered by: astral-sh/uv • rust-lang • cargo-zigbuild • rust-embed • mkdocs • mkdocs-material • and others!
⚔️ Cross compilation¶
Thanks to Rust's amazing toolchain, coupled with cargo-zigbuild, and mostly using pure Rust crates, Pyaket can pretty much compile executables from any platform to any platform.
- No Docker or Virtual Machines required!
The table below shows the known status for all combinations, help me with feedback!
Cross compilation compatibility
From / To | N/A | N/A | GNU | MSVC |
---|---|---|---|---|
🐧 Linux x86 | ✅ x86 ☑️ Arm | ☑️ x86 ☑️ Arm | ✅ x86 ☑️ Arm | 🚫 x86 🚫 Arm |
🐧 Linux Arm | ❓ x86 ❓ Arm | ❓ x86 ❓ Arm | ❓ x86 ❓ Arm | 🚫 x86 🚫 Arm |
💠 Windows x86 | ✅ x86 ☑️ Arm | ☑️ x86 ☑️ Arm | ✅ x86 ☑️ Arm | ✅ x86 🤏 Arm |
💠 Windows Arm | ❓ x86 ❓ Arm | ❓ x86 ❓ Arm | ❓ x86 ❓ Arm | ❓ x86 ❓ Arm |
🍎 MacOS x86 | ✔️ x86 ✔️ Arm | ✔️ x86 ✔️ Arm | ✔️ x86 ✔️ Arm | 🚫 x86 🚫 Arm |
🍎 MacOS Arm | ✔️ x86 ✔️ Arm | ✔️ x86 ✔️ Arm | ✔️ x86 ✔️ Arm | 🚫 x86 🚫 Arm |
Note: The table says if it simply compiles or run, your Python project may not work on all platforms.
Legend:
- ✅ Verified and supported
- ☑️ Compiled, but untested
- ✔️ Should work, untested
- 🤏 Almost compiled
- 🚫 Impractical
📦 Installation¶
Head out to the website for the latest installation instructions and more!
💰 Commercial¶
Pyaket is free to use for open source projects that distributes releases at no cost.
Commercial usage (including selling executables, for-profit deployments) or bundling proprietary software requires an appropriate sponsorship tier. You may freely evaluate the viability beforehand, or use it to get started at a limited budget. Fair and enables me to keep the project alive and improve it over time.
Get in touch if you have any questions, need support or features, or want a custom agreement!
♻️ Community¶
✅ Be featured here if you're using Pyaket in your projects!
🌵 Such an empty place here, for now..