v0.1.0
Beta release v0.1.0
First beta release of FloraFlow. This version establishes the core Raspberry Pi hardware controller daemon, Home Assistant MQTT auto-discovery, persistent local scheduling, and a custom Lovelace card fully integrated with HACS.
Key Features
1. Raspberry Pi Daemon
- GPIO Relay Control: Supports irrigation zones using a relay boards.
- Environmental Sensor Integration: Read metrics from DHT22 temperature and humidity sensors.
- Offline Resiliency: Schedules are persisted locally in
schedules.json, ensuring the system recovers state and operates correctly even after Raspberry Pi reboots or power outages. - Safety Auto-Shutoff: Automatically terminates watering when configured durations expire, with support for instant manual overrides.
- Mock Mode: Automatically falls back to GPIO mocking when run on non-Raspberry Pi operating systems (Windows, macOS) for local development and testing.
2. Home Assistant & HACS Dashboard Card
- MQTT Discovery: All controllers, switches, status entities, and sensors are automatically registered in Home Assistant.
- Lovelace Card (
floraflow-card): A responsive grid layout featuring quick toggle switches, real-time status indicators, and modal settings dialogs to adjust start times and durations. - HACS integration preparations: Prepare the repository for HACS integration
3. Developer Experience & CI/CD Pipelines
- uv: Add
uvfor handling virtual environments and package management. - CI Testing Workflow (
ci.yml): Automated formatting checks (black,isort) and unit tests triggered on pull requests to validate incoming code. - Release Automation Workflow (
release.yml): Automates creation of GitHub releases upon pushing tags matchingv*. - HACS Validation Workflow (
validate.yaml): Runs automated checks to verify metadata compatibility before store submissions.
Full Changelog: https://github.com/vallejohan/floraflow/commits/v0.1.0