// the find
skywind3000/PyStand
:rocket: Python Standalone Deploy Environment !!
A small C++ launcher that pairs with Windows' Embedded Python to ship Python (and PyQt/PySide) apps as a standalone .exe without going through PyInstaller. It's for Windows desktop Python devs who want a small, predictable executable and are willing to hand-manage the runtime folder themselves.
The whole thing is one tiny C++ source file plus a CMakeLists — there's no bytecode freezing or import-hook magic, so when something breaks you're debugging a normal folder of .py files, not a PyInstaller black box. Output size is genuinely small (5MB plain, 14MB with PyQt5) because it just loads Embedded Python directly instead of bundling a full interpreter plus unused stdlib. The rename handling is well thought out: renaming PyStand.exe looks for a matching .int, with a `_pystand_static.int` fallback for when you don't want renaming to break the entry point. `os.MessageBox()` and the `-DPYSTAND_CONSOLE=ON` debug build are small but practical touches for anyone actually shipping a desktop app with this.
Windows-only, and there's no prebuilt binary distribution path beyond grabbing one from Releases — building it yourself means pulling in CMake and a C++ toolchain just to get a launcher. Dependency management is entirely manual: the README's answer to 'how do I install packages' is literally 'make a matching venv, pip install, copy site-packages over by hand' — nothing resolves native-extension wheels against the embedded Python's exact ABI, which is where this will bite anyone with compiled dependencies. Docs (README, the linked blog post, the wiki FAQ) are Chinese-only with no English translation, which is a real wall for a project with 1200+ stars and presumably a lot of non-Chinese-reading users. The repo itself is thin outside the core launcher — no test suite, no CI beyond a compile step, so there's nothing verifying behavior across different Embedded Python versions as they change.