skillfed

bond-async

Asynchronous Python wrapper library over Bond Local API

bond-async v0.2.1 78.9K downloads/30d#14,398 on PyPI4
Permissive license MIT AGING released

What it is and what it does

bond-async is an async-first Python client for controlling Bond home automation hubs over their local API. It wraps HTTP calls to the Bond Local API in asyncio-compatible methods, letting you query device state, fetch properties, and send control actions (turn on/off, set speed, etc.) without blocking. The library uses aiohttp for HTTP transport and orjson for JSON parsing.

It's designed for developers building local-network automation scripts or integrations where you control smart home devices—fans, lights, blinds—through a Bond hub on your home network. The async design makes it practical to manage multiple devices concurrently. The package is stable but aging: last updated in mid-2023, so it may lag behind new Bond hub features or firmware changes.

Use it for:

  • Build a local automation script that queries and controls multiple Bond devices concurrently without blocking.
  • Integrate Bond device control into a larger async home automation framework or coordinator.
  • Fetch device state and properties on demand to display in a custom dashboard or monitoring tool.
  • Send timed or conditional actions to Bond devices in an async event loop.

Worth the install?

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

Asynchronous Python wrapper for the Bond Local API, enabling programmatic control of Bond-compatible smart home devices over a local network.

Yes, if you own a Bond hub and need async control over its devices in a Python application. The library is straightforward, has low install friction, and carries no known vulnerabilities. However, be aware that maintenance is aging—last release was 2023-07-13—so if your Bond hub firmware has advanced significantly since then, you may encounter compatibility gaps or missing features. Test against your specific hub before relying on it in production.

Install

bond-async on PyPI

pip

pip install bond-async

uv

uv add bond-async

poetry

poetry add bond-async

Installing bond-async

Before you install

Low friction to install. Maintenance is aging—last release was 2023-07-13 and the repository has not been updated since 2026-01-28, though it remains unarchived. Depends on orjson and aiohttp, both stable libraries.

License in practice

MIT license is permissive; you can use, modify, and distribute this package with minimal legal constraints, provided you retain the license notice.

Quickstart

pip install bond-async

import asyncio
from bond_async import Bond, Action

async def main():
    bond = Bond("your_ip_or_hostname", "your_api_token")
    device_ids = await bond.devices()
    await bond.action(device_ids[0], Action.turn_on())

asyncio.run(main())

Requires a Bond home automation hub on the local network and a valid API token.

Verify before relying

  • Current compatibility with recent Bond hub firmware versions and whether the aging maintenance status affects real-world reliability.
  • Whether all Bond device types and actions are fully supported in version 0.2.1.
  • Minimum Python version requirement beyond the 3.7 classifier listed.

Package facts

License MIT (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 2 — orjson, aiohttp
Maintenance aging — 1,128 days since the last release
Last repo commit
First released
Downloads 78,886/month — #14,398 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: bond_async-0.2.1-py3-none-any.whl

Keywords: bond, local, api, async

Intended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3.7Topic :: Home Automation

Tags

bond local api asyncsmart home device control pythonbond home automation asynclocal api wrapper asyncbond device control library
home-automationasync-iolocal-api

More Home Automation packages