pyobjc-framework-GameController
Wrappers for the framework GameController on macOS
What it is and what it does
This package wraps Apple's GameController framework for use in Python, allowing developers to detect, enumerate, and read input from game controllers connected to macOS. It sits atop PyObjC's bridge layer and requires understanding of both the underlying Objective-C framework and PyObjC's translation conventions.
The package is actively maintained and supports Python 3.10 through 3.15, with wheels built for multiple architectures. It has no known security vulnerabilities and carries a permissive MIT license. Installation requires macOS and the compiled dependencies pyobjc-core and pyobjc-framework-Cocoa; the package itself does not include documentation beyond references to Apple's official GameController documentation.
Use it for:
- Build a macOS game or interactive application that reads input from connected game controllers
- Detect and enumerate available game controllers on a macOS system programmatically
- Monitor controller connection and disconnection events in a macOS application
- Access raw input data from game controllers in Python on macOS
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides Python bindings to macOS's GameController framework, enabling access to game controller input and device management on macOS.
Yes, if you are developing on macOS and need programmatic access to game controller input. The package is actively maintained, carries no security issues, and has a permissive license. Install friction is moderate due to platform specificity and compiled dependencies, but that is inherent to the task. Not applicable on non-macOS platforms.
Install
pyobjc-framework-gamecontroller on PyPI
pip
pip install pyobjc-framework-gamecontrolleruv
uv add pyobjc-framework-gamecontrollerpoetry
poetry add pyobjc-framework-gamecontrollerInstalling pyobjc-framework-GameController
Before you install
Medium install friction due to platform-specific wheels and compiled dependencies. Actively maintained with release 3 days ago and no known vulnerabilities.
License in practice
MIT license permits commercial and private use with minimal restrictions; suitable for most projects without licensing concerns.
Quickstart
pip install pyobjc-framework-gamecontroller
import GameController
macOS 10.9 or later required; also requires pyobjc-core and pyobjc-framework-Cocoa as runtime dependencies.
Verify before relying
- Whether the GameController framework supports all modern macOS game controllers and input devices
- Performance characteristics when polling multiple controllers simultaneously
- Compatibility with third-party controller manufacturers beyond Apple's ecosystem
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 | 656,781/month — #5,485 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyobjc_framework_gamecontroller-12.2.2-cp310-cp310-macosx_10_9_universal2.whl; pyobjc_framework_gamecontroller-12.2.2-cp311-cp311-macosx_10_9_universal2.whl; pyobjc_framework_gamecontroller-12.2.2-cp312-cp312-macosx_10_13_universal2.whl; pyobjc_framework_gamecontroller-12.2.2-cp313-cp313-macosx_10_13_universal2.whl; pyobjc_framework_gamecontroller-12.2.2-cp313-cp313t-macosx_10_13_universal2.whl; pyobjc_framework_gamecontroller-12.2.2-cp314-cp314-macosx_10_15_universal2.whl; pyobjc_framework_gamecontroller-12.2.2-cp314-cp314t-macosx_10_15_universal2.whl; pyobjc_framework_gamecontroller-12.2.2-cp315-cp315-macosx_10_15_universal2.whl; pyobjc_framework_gamecontroller-12.2.2-cp315-cp315t-macosx_10_15_universal2.whl
Keywords: PyObjC, GameController
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-SpriteKitProvides Python bindings to macOS's SpriteKit…
permissive · top 15,000 on PyPI
pyobjc-framework-GameSaveProvides Python bindings for macOS's GameSave…
permissive · top 15,000 on PyPI
pyobjc-framework-GameCenterProvides Python bindings to Apple's GameCenter…
permissive · top 15,000 on PyPI
pyobjc-framework-AVKitProvides Python bindings to macOS's AVKit…
permissive · top 15,000 on PyPI
pyobjc-framework-GameplayKitProvides Python bindings to Apple's GameplayKit…
permissive · top 15,000 on PyPI
pyobjc-framework-MediaLibraryProvides Python bindings to macOS's…
permissive · top 15,000 on PyPI
pyobjc-framework-ScreenSaverProvides Python bindings to macOS's ScreenSaver…
permissive · top 15,000 on PyPI
pyobjc-framework-DeviceDiscoveryExtensionProvides Python bindings for Apple's…
permissive · top 15,000 on PyPI
pyobjc-framework-MediaAccessibilityProvides Python bindings for the macOS…
permissive · top 15,000 on PyPI
pyobjc-framework-GameKitProvides Python bindings to Apple's GameKit…
permissive · top 15,000 on PyPI