skillfed

pyobjc-framework-IOBluetoothUI

Wrappers for the framework IOBluetoothUI on macOS

pyobjc-framework-iobluetoothui v12.2.2 636.1K downloads/30d#5,630 on PyPI803
Permissive license MIT Active released

What it is and what it does

This package wraps Apple's IOBluetoothUI framework for use in Python, allowing developers to build macOS applications that need native Bluetooth device selection and pairing dialogs. It is part of the larger PyObjC project, which bridges Python and Objective-C frameworks on macOS. The wrapper provides access to Cocoa UI components specific to Bluetooth operations without requiring direct Objective-C code.

The package itself does not include documentation; users must refer to Apple's official IOBluetoothUI documentation and PyObjC's general translation guides to understand how to use the framework. It is a thin binding layer, not an abstraction or simplification, so familiarity with both the underlying framework and PyObjC's calling conventions is expected.

Use it for:

  • Build a macOS app that lets users select and pair Bluetooth devices through native system dialogs
  • Integrate Bluetooth device management UI into a Python-based macOS desktop application
  • Create a utility that programmatically triggers Bluetooth pairing workflows on macOS

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides Python bindings to macOS's IOBluetoothUI framework, enabling Bluetooth device selection and pairing dialogs in native applications.

Yes, if you are building a macOS application in Python that needs native Bluetooth UI components. The package is actively maintained, has no known vulnerabilities, and installs with low friction. It is macOS-only and requires Python 3.10+, so it is only relevant for that platform. Expect to consult Apple's framework documentation alongside PyObjC's guides.

Install

pyobjc-framework-iobluetoothui on PyPI

pip

pip install pyobjc-framework-iobluetoothui

uv

uv add pyobjc-framework-iobluetoothui

poetry

poetry add pyobjc-framework-iobluetoothui

Installing pyobjc-framework-IOBluetoothUI

Before you install

Low friction install with active maintenance—released 3 days ago and updated regularly. Depends on pyobjc-core and pyobjc-framework-IOBluetooth, both part of the same PyObjC ecosystem.

License in practice

MIT license permits free use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.

Quickstart

pip install pyobjc-framework-iobluetoothui

from IOBluetoothUI import IOBluetoothDeviceSelectorController
# Use the framework's UI components for Bluetooth device selection

macOS only; requires Python 3.10 or later and a macOS system with Cocoa support.

Verify before relying

  • Specific UI components and methods available in this version of the IOBluetoothUI wrapper
  • Whether this package includes the full IOBluetoothUI API surface or a subset

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 2 — pyobjc-core, pyobjc-framework-IOBluetooth
Maintenance actively maintained — 3 days since the last release
Last repo commit
First released
Downloads 636,133/month — #5,630 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyobjc_framework_iobluetoothui-12.2.2-py2.py3-none-any.whl

Keywords: PyObjC, IOBluetoothUI

Development Status :: 5 - Production/StableEnvironment :: ConsoleEnvironment :: MacOS X :: CocoaIntended Audience :: DevelopersNatural Language :: EnglishOperating System :: MacOS :: MacOS XProgramming Language :: Objective CProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.15Programming Language :: Python :: Free Threading :: 3 - StableProgramming Language :: Python :: Implementation :: CPythonTopic :: Software Development :: Libraries :: Python ModulesTopic :: Software Development :: User Interfaces

Tags

macos bluetooth ui bindingspyobjc iobluetoothuibluetooth device picker dialogmacos cocoa bluetoothobjective-c bluetooth wrapperpython macos bluetooth ui
macos-onlybluetoothcocoa-bindings

More Python Modules packages

idna

Converts domain names between Unicode and…

permissive · top 100 on PyPI

setuptools

Setuptools is a Python build backend and…

permissive · top 100 on PyPI

PyYAML

PyYAML parses and emits YAML 1.1 data format,…

permissive · top 100 on PyPI

pydantic

Pydantic validates Python data structures…

permissive · top 100 on PyPI

annotated-types

Provides reusable metadata objects for use with…

permissive · top 100 on PyPI

typing-inspection

Provides runtime tools to inspect and…

permissive · top 100 on PyPI

pyobjc-framework-PhotosUI

Provides Python bindings to macOS's PhotosUI…

permissive · top 15,000 on PyPI

pyobjc-framework-CoreBluetooth

Provides Python bindings to macOS's…

permissive · top 5,000 on PyPI

pyobjc-framework-ContactsUI

Provides Python bindings to macOS's ContactsUI…

permissive · top 15,000 on PyPI

pyobjc-framework-SecurityUI

Provides Python bindings to macOS's SecurityUI…

permissive · top 15,000 on PyPI

pyobjc-framework-CoreAudioKit

Provides Python bindings for macOS's…

permissive · top 15,000 on PyPI

pyobjc-framework-IOBluetooth

Provides Python bindings to macOS's IOBluetooth…

permissive · top 15,000 on PyPI

pyobjc-framework-CoreAudio

Provides Python bindings to macOS's CoreAudio…

permissive · top 15,000 on PyPI

pyobjc-framework-LocalAuthenticationEmbeddedUI

Provides Python bindings for macOS's…

permissive · top 15,000 on PyPI

pyobjc-framework-Network

Provides Python bindings to Apple's Network…

permissive · top 15,000 on PyPI

pyobjc-framework-SecurityInterface

Provides Python bindings to macOS's…

permissive · top 15,000 on PyPI