Kivy-iOS Recipes vs PEP 730 Wheels Coverage
Generated: 2025-11-20 17:37:12
Kivy-iOS Recipes: 47
Recipes Requiring iOS Wheels: 35 (excluding 8 pure Python, 4 build-time only)
PEP 730 iOS Wheels (PySwift + KivySchool): 29
Coverage: 23/35 (66%)
Summary
Of the 47 kivy-ios recipes: - 8 are pure Python packages that don't need iOS wheels (can be installed via pip) - 4 are build-time only recipes (hostopenssl, hostpython3, python3, freetype)
For the remaining 35 recipes that require runtime iOS wheels, PySwift and KivySchool provide 23 pre-built PEP 730 wheels (including bundled SDL frameworks), representing 66% coverage. An additional 2 packages (pillow, pymunk) have official PEP 730 wheels available on PyPI.
PEP 730 wheels offer a modern alternative to the traditional kivy-ios recipe system, eliminating the need to compile packages from source on iOS.
✅ Covered Recipes (25)
PySwift + KivySchool PEP 730 Wheels (23)
These kivy-ios recipes have equivalent PEP 730 wheels provided by PySwift and/or KivySchool:
| Kivy-iOS Recipe | PEP 730 Wheel | Status |
|---|---|---|
angle |
kivy-sdl3-angle |
✅ Available (KivySchool) |
audiostream |
ios |
✅ Available (PySwift) |
ios |
ios |
✅ Available (PySwift + KivySchool) |
kivy |
kivy-sdl2 |
✅ Available (PySwift + KivySchool) |
kiwisolver |
kiwisolver |
✅ Available (PySwift) |
libffi |
cffi |
✅ Available (PySwift) |
libpng |
libpng |
✅ Available (PySwift) |
materialyoucolor |
materialyoucolor |
✅ Available (PySwift) |
matplotlib |
matplotlib |
✅ Available (PySwift) |
netifaces |
netifaces |
✅ Available (PySwift) |
numpy |
numpy |
✅ Available (PySwift) |
pycrypto |
pycryptodome |
✅ Available (PySwift) |
plyer |
pyobjus (dependency) |
✅ Available (PySwift + KivySchool) |
pyobjus |
pyobjus |
✅ Available (PySwift + KivySchool) |
sdl2 |
kivy-sdl2 |
✅ Available (PySwift + KivySchool) |
sdl2_image |
kivy-sdl2 (bundled) |
✅ Available (PySwift + KivySchool) |
sdl2_mixer |
kivy-sdl2 (bundled) |
✅ Available (PySwift + KivySchool) |
sdl2_ttf |
kivy-sdl2 (bundled) |
✅ Available (PySwift + KivySchool) |
sdl3 |
kivy-sdl3-angle |
✅ Available (KivySchool) |
sdl3_image |
kivy-sdl3-angle (bundled) |
✅ Available (KivySchool) |
sdl3_mixer |
kivy-sdl3-angle (bundled) |
✅ Available (KivySchool) |
sdl3_ttf |
kivy-sdl3-angle (bundled) |
✅ Available (KivySchool) |
Official PyPI PEP 730 Wheels (2)
These packages have official iOS wheels available on PyPI:
| Kivy-iOS Recipe | PyPI Package | Status |
|---|---|---|
pillow |
pillow |
✅ Available on PyPI |
pymunk |
pymunk |
✅ Available on PyPI |
🐍 Pure Python Recipes (8)
These recipes are for pure Python packages that can be installed directly via pip - no iOS wheels needed:
| Kivy-iOS Recipe | Installation |
|---|---|
click |
pip install click |
flask |
pip install flask |
itsdangerous |
pip install itsdangerous |
jinja2 |
pip install jinja2 |
markupsafe |
pip install markupsafe |
pykka |
pip install pykka |
pyyaml |
pip install pyyaml |
werkzeug |
pip install werkzeug |
⚠️ Not Covered Recipes (10)
These kivy-ios recipes require runtime binary wheels but don't have PEP 730 equivalents yet:
System Libraries (4)
Low-level C libraries, typically bundled with other packages:
| Kivy-iOS Recipe | Notes |
|---|---|
libcurl |
Usually bundled with dependent packages |
libjpeg |
Usually bundled with pillow |
libzbar |
Usually bundled with zbarlight |
openssl |
Usually bundled with cryptography |
Other Packages (6)
| Kivy-iOS Recipe | Type | Notes |
|---|---|---|
curly |
Other | Check PyPI for availability |
cymunk |
Physics Engine | Alternative to pymunk - may not be actively maintained |
ffmpeg |
Media Library | Check PyPI for availability |
ffpyplayer |
Media Player | Check PyPI for availability |
kivent_core |
Deprecated/Broken | May not be actively maintained |
photolibrary |
iOS Library | Check PyPI for availability |
py3dns |
Deprecated/Broken | May not be actively maintained |
zbarlight |
Barcode Scanner | Check PyPI for availability |
📦 PEP 730-Only Packages
These packages are available as PEP 730 wheels from PySwift but don't have kivy-ios recipes:
aiohttp, apsw, bcrypt, bitarray, brotli, contourpy, coverage, cryptography, greenlet, lru-dict, msgpack, orjson, pendulum, pydantic-core, regex, sqlalchemy, watchdog, zeroconf
Notes
What is PEP 730?
PEP 730 is a Python Enhancement Proposal that defines the standard for distributing iOS and macOS binary wheels. It introduces platform tags like ios_arm64 and macosx_* that allow pip to install pre-compiled packages on Apple platforms.
Before PEP 730, iOS developers had to compile all C extensions from source using tools like kivy-ios. With PEP 730 wheels, packages can be installed directly via pip, just like on desktop platforms.
PySwift provides a collection of PEP 730 compliant wheels for iOS, making it much easier to use popular Python packages in iOS apps.
SDL Libraries
The SDL2 and SDL3 frameworks are bundled into comprehensive wheels:
- kivy-sdl2 - Includes SDL2, SDL2_image, SDL2_mixer, SDL2_ttf (available from both PySwift and KivySchool)
- kivy-sdl3-angle - Includes SDL3, SDL3_image, SDL3_mixer, SDL3_ttf, ANGLE (available from KivySchool)
KivySchool Repository
The KivySchool repository provides core Kivy framework wheels:
- ios - iOS platform support
- kivy - Core Kivy framework
- kivy-sdl2 - SDL2 bundle for Kivy
- kivy-sdl3-angle - SDL3 bundle with ANGLE for Kivy
- pyobjus - Python-Objective-C bridge
These overlap with PySwift offerings, providing redundancy and choice for users.
Pure Python Packages
8 kivy-ios recipes are for pure Python packages that can be installed directly via pip on iOS without needing special wheels or recipes (Flask, Jinja2, Click, etc.).
Build-Time Only Recipes
4 recipes (hostopenssl, hostpython3, python3, freetype) are build-time dependencies only - not needed for runtime wheel installation. Freetype has iOS builds but is only required when producing wheels, not when using them.
System Libraries
Low-level C libraries (OpenSSL, libffi, etc.) are often included as dependencies of higher-level packages and don't need separate wheel distributions.
Generated by: PySwiftKit Documentation Tool
Sources:
- Kivy-iOS: https://github.com/kivy/kivy-ios/tree/master/kivy_ios/recipes
- PySwift PEP 730 Wheels: https://pypi.anaconda.org/pyswift/simple
- KivySchool PEP 730 Wheels: https://pypi.anaconda.org/kivyschool/simple
- PEP 730 Specification: https://peps.python.org/pep-0730/