--- id: brunt version: "1.2.0" license: mit license_treatment: permissive maintenance: abandoned --- # brunt — Unofficial python SDK for Brunt, this package allows you to control your Brunt devices from code. License: permissive · Maintenance: abandoned · Downloads: 73.7K/mo ## What it is and what it does Brunt is an unofficial Python wrapper around the Brunt smart blind API, ported from the original NPM version. It provides both synchronous (BruntClient) and asynchronous (BruntClientAsync) interfaces to authenticate with Brunt accounts, enumerate registered devices, query their current state, and command position changes. The package handles the HTTP communication and JSON parsing needed to interact with Brunt's cloud service. The library is designed for developers who own Brunt motorized blinds and want to automate or integrate them into Python-based home automation systems. It abstracts away API details like authentication tokens and device URIs, letting you work with device names and position values directly. The async variant uses aiohttp for non-blocking I/O, suitable for event-driven applications. Use it for: - Automate blind position changes based on time of day or sunrise/sunset in a home automation script. - Query blind positions periodically and log them for energy or comfort analysis. - Integrate Brunt blinds into a larger Python home automation framework using async I/O. - Build a web dashboard or mobile app backend that controls blinds on demand. - Trigger blind adjustments in response to sensor data from other systems. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Python SDK for controlling Brunt motorized blinds and shades via their API, with both synchronous and asynchronous client support. No. The package is abandoned (last commit 2022-02-17, no activity for 1639 days), and there is no indication that Brunt's API or devices remain actively supported. Without ongoing maintenance, compatibility with current Python versions and aiohttp releases is at risk, and any API changes on Brunt's side would break the library silently. Only install if you have a legacy Brunt setup and are willing to fork and maintain the code yourself. ## Install pip install brunt uv add brunt poetry add brunt ## Installing brunt Before you install: Low install friction with a pure-Python wheel, but the package is abandoned—last release was 2022-02-17 with no commits since. Relies on aiohttp and importlib-metadata, both stable dependencies. License in practice: MIT license permits commercial and private use with minimal restrictions, making it safe to adopt from a licensing perspective. Quickstart: from brunt import BruntClient bapi = BruntClient() bapi.login('username', 'password') things = bapi.get_things()['things'] state = bapi.get_state(thing='Blind')['thing'] bapi.change_request_position(90, thing='Blind') Verify before relying: - Whether Brunt's API remains functional and unchanged since the last release in 2022. - Compatibility with current versions of aiohttp and whether the package works with modern Python versions. - Whether Brunt devices are still actively sold or supported by the manufacturer. ## Package facts - License: mit (permissive) - Python support: unspecified - Install friction: low - Maintenance: abandoned - Downloads: 73.7K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags brunt blinds control python, motorized shade api client, smart blind automation sdk, brunt device python library, async blind position control, home-automation, iot-client, abandoned [View on SkillFed](https://skillfed.io/packages/brunt) · [View on PyPI](https://pypi.org/project/brunt/)