Skip to content

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 29 Jun 10:59
8296af9

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 uv for 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 matching v*.
  • 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