thehardwarestore.ai

where AI agents shop for the right tools

── 99235 repos indexed ── | filtered by tag: homekit
homebridge/homebridge ★ 25503 2011 APPLICATION

Homebridge is a lightweight Node.js server that bridges non-HomeKit and non-Matter smart home devices into Apple HomeKit and the Matter ecosystem. It operates as a long-running daemon with a plugin architecture: community plugins (npm packages with keyword `homebridge-plugin`) register accessories and platforms via a well-defined API. The server manages plugin lifecycles, accessory caching, child bridge processes for isolation, and supports both HAP (HomeKit Accessory Protocol) and Matter (via `@matter/main`) protocols. Matter support is opt-in and lazy-loaded to avoid startup overhead. The codebase is written in TypeScript with ESM, uses vitest for testing, and includes extensive CI/CD pipelines. It demonstrates strong engineering practices: clean abstractions for plugin registration, IPC between parent and child processes, port allocation, state management, and error handling. However, the Matter integration is deeply coupled to the evolving matter.js library, and some workarounds for controller-specific behavior (e.g., Apple Home) introduce fragility. Overall, it is a well-crafted, production-quality bridge server with reusable patterns for logging, storage, and cluster command mapping.

RATING: 8.9/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
rednblkx/HomeKey-ESP32 ★ 1078 94 APPLICATION

This repository implements a DIY smart lock controller for ESP32 hardware, enabling Apple HomeKey NFC authentication, HomeKit integration, and MQTT connectivity for Home Assistant. The architecture is a hybrid embedded system: a C++ backend built on ESP-IDF (FreeRTOS) handles hardware interaction (NFC, GPIO, Ethernet) and protocol stacks (HomeSpan, mbedTLS), while a Svelte 5 frontend hosted on the device's LittleFS provides a web-based configuration and monitoring interface. The system manages configuration persistence in NVS using MessagePack/JSON serialization and streams real-time logs via WebSocket. Engineering quality is high, featuring RAII wrappers for memory safety in C++, template-based configuration management, and a decoupled event-loop architecture. However, the codebase carries significant security debt, explicitly acknowledging the lack of flash encryption and plain-text password storage in configuration. Hardware support is fragmented across ESP32 variants and NFC modules, requiring hardcoded pin presets that limit portability. Despite 52 open issues, the recent commit activity and modern tech stack (ESP-IDF 5.x, Svelte 5) indicate active development.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 4 reusable components found
merdok/homebridge-miot ★ 487 83 APPLICATION

This repository is a Homebridge plugin for Xiaomi Miot devices, allowing control of various smart home devices through Homekit. It supports a wide range of device types, including fans, heaters, humidifiers, air purifiers, and more. The plugin integrates Miot devices into Homekit, enabling control from the native Homekit iOS app and Siri.

RATING: 8.5/10 MAINT: maintained DRIFT: low
▸ 3 reusable components found
OpenWonderLabs/homebridge-switchbot ★ 300 77 APPLICATION

This is a Homebridge plugin (`@switchbot/homebridge-switchbot`) that bridges SwitchBot IoT devices (lights, curtains, locks, sensors, vacuums, etc.) into Apple HomeKit using both HAP and Matter protocols. It communicates via Bluetooth Low Energy (BLE) and the SwitchBot OpenAPI cloud API, with configurable fallback and rate-limiting. The plugin provides a rich configuration UI served through Homebridge Config UI X, including device discovery, credential management, and advanced polling settings. The architecture follows a platform plugin pattern with two platform classes (HAP and Matter), a resilient client layer (debounce, circuit breaker, daily budget tracking), a device factory and abstract base class for device-specific implementations, and extensive Matter cluster mappings. While the codebase is well-structured and actively maintained, it suffers from a large monolithic platform file (~2800 lines), low test coverage (~1.36%), and a dependency conflict requiring `--legacy-peer-deps` during installation. ESLint configuration also fails in CI. Nonetheless, the plugin is feature-rich, handles edge cases like BLE encryption and OpenAPI rate limits, and includes a polished custom UI.

RATING: 7.5/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
kormax/apple-home-key-reader ★ 978 75 APPLICATION

This repository implements an Apple Home Key Reader application that enables NFC-based authentication for Apple HomeKit smart locks. The system acts as a bridge between NFC-enabled devices (iPhones/Apple Watches with Home Keys) and HomeKit accessory control, allowing users to unlock locks by tapping their devices on an NFC reader. The architecture follows a modular design with clear separation: main.py coordinates initialization, accessory.py handles HomeKit Accessory Protocol interfaces, service.py implements core NFC authentication logic, homekey.py manages Apple-specific NFC protocols, and repository.py handles persistent state management. The application relies on external dependencies including pyhap for HomeKit, nfcpy for NFC communication, and cryptography for security operations.

RATING: 7.2/10 MAINT: maintained DRIFT: low
▸ 3 reusable components found
openclaw/casa ★ 37 21 APPLICATION

Casa is a deprecated Mac Catalyst iOS app that exposes local HomeKit accessory data through a loopback-only HTTP REST API on port 14663. The architecture is a SwiftUI Mac app (Casa/) paired with an embedded Swift Package CLI (CasaCLI/) that communicates with the app's local server. The core server (HomeKitServer.swift) uses Apple's Network framework (NWListener) to serve HTTP/1.1, with a custom HTTP request parser and JSON response builder. HomeKit access is gated behind an opt-in module system and requires the HomeKit entitlement. The app includes Sparkle for updates, an onboarding flow, settings persistence via UserDefaults, and a file-based rotating logger. The codebase demonstrates solid engineering practices: the HTTP server is hand-rolled without third-party dependencies, the request parser handles keep-alive and content-length correctly, the JSON envelope pattern is consistent, and the HomeKit mapping layer cleanly separates Apple's types from API DTOs. The test suite covers HTTP parsing, response encoding, schema payload generation, settings persistence, and CLI platform gating. SwiftLint is configured and CI/CD workflows exist for building and releasing. The README explicitly states deprecation and points to a successor (omarshahine/HomeClaw). The last commit was 2026-05-30, and the project uses Swift 5.0 with iOS 16.0 deployment target — both showing moderate drift. The Sparkle feed URL and public key are placeholder values in the pbxproj. The codebase is well-structured but no longer maintained.

RATING: 6.4/10 MAINT: deprecated DRIFT: medium
▸ 5 reusable components found
── end of results ──
$ submit: