buildozer
Turns Python applications into binary packages ready for installation on a number of platforms.
Decision gist · record as of 2026-08-14
Yes, if you are building Python applications for mobile (especially Android/iOS) or need cross-platform desktop packaging. The low install friction and active maintenance make it accessible, though you should expect to follow detailed platform-specific setup instructions and have external build tools (Android SDK, Xcode, etc.) available. Not necessary for web-only or pure-server applications.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Building for Android requires Android SDK and NDK to be downloaded and configured; iOS builds require Xcode.
- The description notes these are not Python dependencies but external platform tools that buildozer will help manage.
- Low install friction with a pure-Python wheel distribution.
License · maintenance · safety
MIT (permissive) — MIT licensed under permissive terms, allowing commercial and private use with minimal restrictions.
last release 2026-05-12 (94 days) · last repo commit 2026-08-12 · 2,019 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 164,886 downloads/mo, #10,536 on PyPI
Alternatives
Verify before relying
pip install buildozer
buildozer init
# Edit buildozer.spec, then:
buildozer android debug- Whether the package successfully handles all edge cases across the five target platforms (Android, iOS, Windows, macOS, Linux) in production use.
- Current state of community support and response time for build-related issues, given the complexity of cross-platform compilation.
- Compatibility with the latest versions of Kivy framework and whether non-Kivy GUI frameworks are equally well-supported.
What it is and what it does
Buildozer is a command-line build automation tool that packages Python applications into installable binaries for multiple platforms—Android, iOS, Windows, macOS, and Linux—from a single buildozer.spec configuration file. It abstracts away the complexity of platform-specific build toolchains by managing dependencies and orchestrating compilation through its sibling projects python-for-android and Kivy for iOS. The tool is particularly designed to simplify Kivy framework app development but can work with any Python GUI framework.
Developers provide a buildozer.spec file describing their app's title, icons, requirements, and target platforms, then run buildozer commands like `buildozer android debug` or `buildozer ios release` to generate ready-to-install packages. For Android, buildozer automates SDK and NDK setup. The tool is actively maintained by the Kivy Team and supports Python 3.8 through 3.14, with a Docker image and GitHub Actions integration available for CI/CD workflows.
Use it for
- Package a Kivy-based mobile app for Android and iOS distribution from a single Python codebase.
- Automate cross-platform binary builds in CI/CD pipelines using the GitHub Actions integration.
- Build and deploy Python desktop applications to Windows, macOS, and Linux without learning platform-specific build systems.
- Manage Android SDK/NDK dependencies and compilation automatically instead of configuring them manually.
- Create debug and release builds with different signing and optimization settings via buildozer.spec configuration.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are building Python applications for mobile (especially Android/iOS) or need cross-platform desktop packaging.
The low install friction and active maintenance make it accessible, though you should expect to follow detailed platform-specific setup instructions and have external build tools (Android SDK, Xcode, etc.) available. Not necessary for web-only or pure-server applications.
Install
buildozer on PyPI
Before you install
Low install friction with a pure-Python wheel distribution. Depends on pexpect, packaging, and cython. Note that the package itself has low friction, but the description emphasizes that full setup requires platform-specific dependencies outside Python (Android SDK/NDK for Android builds, Xcode for iOS, etc.), so initial configuration can be involved despite the pip install being straightforward.
Building for Android requires Android SDK and NDK to be downloaded and configured; iOS builds require Xcode. The description notes these are not Python dependencies but external platform tools that buildozer will help manage.
License in practice
MIT licensed under permissive terms, allowing commercial and private use with minimal restrictions.
Quickstart
pip install buildozer
buildozer init
# Edit buildozer.spec, then:
buildozer android debug
Verify before relying
- Whether the package successfully handles all edge cases across the five target platforms (Android, iOS, Windows, macOS, Linux) in production use.
- Current state of community support and response time for build-related issues, given the complexity of cross-platform compilation.
- Compatibility with the latest versions of Kivy framework and whether non-Kivy GUI frameworks are equally well-supported.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 3 packagespexpectpackagingcython |
| Maintenance | Actively maintained 94 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 164,886 / month, #10,536 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Build Tools |
Evidence: buildozer-1.6.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “python to mobile app builder”
- buildozerBuildozer turns Python applications into binary packages for Android,…
- KivyKivy is a Python framework for building graphical user interfaces…
- htaghtag is a Python GUI toolkit for building web, desktop, and mobile…
Give your agent the search over MCP, or paste the wish link into any chat.
More Build Tools packages
Provides reusable utilities for Python packaging interoperability, including version handling, specifiers, markers, requirements, tags, and metadata parsing according to standards like PEP 440 and PEP 425.
Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.
pip is the standard installer for Python packages, enabling you to download and install packages from the Python Package Index and other indexes into your Python environment.
Hatchling is a standards-compliant Python build backend that handles packaging, metadata, and distribution of Python projects when configured in a project's pyproject.toml file.
Generates Python gRPC service stubs and message classes from Protocol Buffer definitions, enabling developers to build gRPC clients and servers.
pre-commit is a framework for installing and running git hooks written in any language before commits are made, automating code quality and validation checks across multi-language projects.
Install it if your team needs consistent, automated validation at commit time.
See also Kivy · plyer · flet-desktop · flet · manygo · codemagic-cli-tools · flet-web · robotframework-appiumlibrary · scikit-build · uiautomator