pyobjc-framework-CallKit
Wrappers for the framework CallKit on macOS
What it is and what it does
pyobjc-framework-callkit is a thin Python wrapper around Apple's CallKit framework, part of the larger PyObjC project. It allows Python developers on macOS to interact with the native CallKit APIs for managing phone calls and VoIP integrations. The package does not include its own documentation; instead, it bridges Python code to Apple's Objective-C framework, requiring developers to consult both Apple's CallKit documentation and PyObjC's general translation guides.
The package depends on pyobjc-core and pyobjc-framework-Cocoa, which handle the underlying Objective-C bridge mechanics. It is actively maintained, supports Python 3.10 through 3.15 (including free-threading variants), and is distributed as pre-built wheels for macOS. Installation is straightforward on supported platforms, but the package is strictly macOS-bound and requires a minimum Python version.
Use it for:
- Build a VoIP client application on macOS that integrates with the native phone call UI.
- Create a call-screening or call-management utility that hooks into macOS call handling.
- Develop a telephony automation tool that needs to respond to incoming calls programmatically.
- Integrate a Python backend with macOS native calling features for a hybrid application.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides Python bindings for Apple's CallKit framework on macOS, enabling programmatic access to call handling and VoIP integration features.
Yes, if you are developing on macOS and need to integrate with CallKit. The package is actively maintained, carries no known vulnerabilities, uses a permissive MIT license, and supports current Python versions. Install friction is moderate due to platform and version constraints, but those are inherent to the framework itself, not the wrapper. If you are not on macOS or do not need CallKit integration, this package is not applicable.
Install
pyobjc-framework-callkit on PyPI
pip
pip install pyobjc-framework-callkituv
uv add pyobjc-framework-callkitpoetry
poetry add pyobjc-framework-callkitInstalling pyobjc-framework-CallKit
Before you install
Medium install friction due to platform and Python version specificity—wheels are provided for macOS only (10.9 and later depending on Python version) and require Python 3.10 or higher. The package is actively maintained with a recent release.
License in practice
MIT license permits commercial and private use with minimal restrictions, making it straightforward to integrate into proprietary or open-source projects.
Quickstart
pip install pyobjc-framework-callkit
import CallKit
# Access CallKit framework classes and methods via the imported module
macOS only; requires Python 3.10 or later and a compatible macOS version (10.9 minimum for older Python versions, 10.13+ for Python 3.12–3.13, 10.15+ for Python 3.14–3.15).
Verify before relying
- Whether CallKit bindings support all current Apple CallKit APIs or only a subset.
- Performance characteristics when handling concurrent call events.
- Whether free-threading support (Python 3.13+) is fully tested in production scenarios.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 2 — pyobjc-core, pyobjc-framework-Cocoa |
| Maintenance | actively maintained — 3 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 654,452/month — #5,525 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyobjc_framework_callkit-12.2.2-cp310-cp310-macosx_10_9_universal2.whl; pyobjc_framework_callkit-12.2.2-cp311-cp311-macosx_10_9_universal2.whl; pyobjc_framework_callkit-12.2.2-cp312-cp312-macosx_10_13_universal2.whl; pyobjc_framework_callkit-12.2.2-cp313-cp313-macosx_10_13_universal2.whl; pyobjc_framework_callkit-12.2.2-cp313-cp313t-macosx_10_13_universal2.whl; pyobjc_framework_callkit-12.2.2-cp314-cp314-macosx_10_15_universal2.whl; pyobjc_framework_callkit-12.2.2-cp314-cp314t-macosx_10_15_universal2.whl; pyobjc_framework_callkit-12.2.2-cp315-cp315-macosx_10_15_universal2.whl; pyobjc_framework_callkit-12.2.2-cp315-cp315t-macosx_10_15_universal2.whl
Keywords: PyObjC, CallKit
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
pyobjc-framework-InputMethodKitProvides Python bindings to macOS's…
permissive · top 15,000 on PyPI
pyobjc-framework-NetworkProvides Python bindings to Apple's Network…
permissive · top 15,000 on PyPI
pyobjc-framework-BusinessChatProvides Python bindings for Apple's…
permissive · top 15,000 on PyPI
pyobjc-framework-SafariServicesProvides Python bindings to macOS's…
permissive · top 15,000 on PyPI
pyobjc-framework-ClassKitProvides Python bindings to Apple's ClassKit…
permissive · top 15,000 on PyPI
pyobjc-framework-libxpcProvides Python bindings to the macOS XPC…
permissive · top 15,000 on PyPI
pyobjc-framework-MapKitProvides Python bindings to Apple's MapKit…
permissive · top 15,000 on PyPI
pyobjc-framework-EventKitProvides Python bindings to macOS's EventKit…
permissive · top 15,000 on PyPI
pyobjc-framework-ContactsUIProvides Python bindings to macOS's ContactsUI…
permissive · top 15,000 on PyPI
pyobjc-framework-ContactsProvides Python bindings to macOS's Contacts…
permissive · top 15,000 on PyPI