A tool for converting Python projects into standalone native applications for desktop, mobile, and web.
Briefcase is a tool that converts Python projects into standalone native applications for distribution. It packages Python code, dependencies, and a runtime into installable bundles for desktop (macOS, Windows, Linux), mobile (iOS, Android), and web platforms, eliminating the need for end-users to install Python separately.
Python developers who want to distribute their applications as native installable packages to end-users across multiple operating systems and devices.
Developers choose Briefcase because it provides a simple, unified workflow for packaging Python applications natively across all major platforms, leveraging the BeeWare ecosystem to make Python a viable choice for native app development without requiring platform-specific code rewrites.
Tools to support converting a Python project into a standalone native application.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Generates native applications for macOS, Windows, Linux, iOS, Android, and the web from a single Python codebase, as highlighted in the README's multi-platform packaging feature.
Packages Python applications with all dependencies, so end-users don't need to install Python or manage libraries, simplifying distribution and usage.
Provides a consistent command-line interface for building, running, and packaging across all supported platforms, reducing complexity in cross-platform development.
Part of the BeeWare suite, which emphasizes making Python apps look and feel native on each platform by respecting platform-specific conventions.
Support for platforms like AppleTV, watchOS, and wearOS is only planned, not yet available, limiting immediate deployment options for those ecosystems.
Including Python runtime and dependencies can result in bulky application packages, which may not be ideal for bandwidth-constrained or storage-sensitive environments.
Packaging for iOS and Android may require additional configuration, tooling, or platform-specific knowledge compared to desktop platforms, as hinted by the separate build processes.