A Home Assistant custom integration for the Flatastic chore management app. It creates sensors for each chore, provides services to complete chores, and includes a custom Lovelace card for interactive management.
- Fetches chore data from the Flatastic API
- Creates individual sensors for each chore
- Automatic updates every 15 minutes
- Each sensor shows the current assigned user name as its state value
- All chore attributes available as sensor attributes
- Filterable attributes for use with Auto Entities card
- Custom Lovelace card for interactive chore management
- Services for completing chores and cleaning up orphaned entities
- Open HACS in your Home Assistant instance
- Go to "Integrations"
- Click the three dots in the top right corner
- Select "Custom repositories"
- Add this repository URL:
https://codeberg.org/thegroove/ha-flatastic - Select "Integration" as the category
- Click "Add"
- Find "Flatastic" in the integration list and install it
- Restart Home Assistant
- Copy the
custom_components/flatasticfolder to your Home Assistantcustom_componentsdirectory - Restart Home Assistant
- Go to Settings > Devices & Services in Home Assistant
- Click "Add Integration"
- Search for "Flatastic"
- Enter your Flatastic API key
- Click "Submit"
You need a Flatastic API key to use this integration. The API key can be obtained from your Flatastic account or by contacting Flatastic support.
The integration creates one sensor per chore. Each sensor:
- Has a unique ID based on the chore ID
- Shows the current assigned user name as its state value
- Contains all chore data as attributes (title, id, details, users, points, rotationTime, currentUser, lastDoneDate, creationDate, fixed, timeLeftNext)
- Includes filterable attributes for use with Auto Entities card
- Is automatically added/removed when chores change in Flatastic
The integration adds several attributes designed for filtering with the Auto Entities card:
| Attribute | Values | Description |
|---|---|---|
integration |
flatastic |
Always set, for easy filtering |
chore_type |
household |
Always set, for categorization |
status |
overdue, due_soon, pending |
Based on timeLeftNext |
urgency |
high, medium, low |
Based on how far overdue |
Status thresholds:
overdue:timeLeftNext < 0due_soon:0 <= timeLeftNext < 86400(within 24 hours)pending:timeLeftNext >= 86400
Urgency thresholds:
high: more than 1 week overduemedium: overdue but less than 1 weeklow: not overdue
type: custom:auto-entities
card:
type: entities
title: Overdue Chores
filter:
include:
- attributes:
integration: flatastic
status: overdue
sort:
method: attribute
attribute: timeLeftNextMarks a chore as completed by a specific user.
| Parameter | Type | Required | Description |
|---|---|---|---|
chore_id |
int | yes | The ID of the chore to complete |
completed_by |
int | yes | The user ID who completed the chore |
service: flatastic.complete_chore
data:
chore_id: 3431881
completed_by: 1665048Removes sensor entities for chores that no longer exist in Flatastic. Useful for cleaning up "unavailable" sensors that remain after chores are deleted.
No parameters required.
The integration includes a custom Lovelace card that displays overdue chores with completion buttons. The card is registered automatically when the integration loads — no manual resource configuration needed.
type: custom:flatastic-chores-cardFeatures:
- Shows only overdue chores
- Color-coded urgency levels (high: red, medium: orange)
- Displays how long each chore is overdue
- Completion buttons per user
- Celebration message when no chores are overdue
Optional configuration:
type: custom:flatastic-chores-card
title: "My Overdue Tasks"When chores are deleted from Flatastic, the integration automatically removes the corresponding sensors. If orphaned entities remain:
- Manual: Call the
flatastic.cleanup_orphaned_entitiesservice - Automated: Set up a daily automation (see
custom_components/flatastic/examples/cleanup_automation.yaml)
- id: flatastic_cleanup_orphaned_entities
alias: "Flatastic: Cleanup Orphaned Entities"
trigger:
- platform: time
at: "03:00:00"
action:
- service: flatastic.cleanup_orphaned_entities
data: {}- Python 3.12+
- uv (recommended) or pip
uv run --with pytest --with pytest-asyncio --with aiohttp pytest tests/ -vuv run --with ruff ruff check custom_components/flatastic/custom_components/flatastic/
__init__.py # Integration entry point, service registration
config_flow.py # UI-based configuration flow
coordinator.py # Data update coordinator (API communication)
sensor.py # Sensor platform (entity management)
cleanup_service.py # Orphaned entity cleanup service
const.py # Constants and API endpoints
manifest.json # Integration metadata
services.yaml # Service definitions
strings.json # UI strings
translations/ # Translations (en, de)
www/ # Custom Lovelace card
examples/ # Example automations and dashboards
tests/ # Test suite
For issues and feature requests, use the issue tracker.
MIT License