github pathofleastresistor/activity-manager 0.3.0
0.3.0 - Multi-list, Lovelace card, full CRUD

27 days ago

What's new in v0.3.0

This is a major release bringing multi-list support, a fully-featured Lovelace card, and a complete backend rewrite.

Multi-list support

  • Each activity list is now an independent config entry — add as many lists as you need (Home, Work, Social, etc.)
  • WebSocket commands and HA services all accept entry_id to route operations to the correct list
  • Handlers are registered once on first entry setup, making concurrent entry loading race-safe

New Lovelace card (activity-manager-card)

  • Visual activity rows with status-coloured SVG progress rings (ok / due soon / overdue)
  • Compact mode — smaller rows with inline due-date for dense dashboards
  • Mark done — tap any activity to log a completion with a datetime picker
  • Manage panel — add, edit, and delete activities without leaving the card
  • Card editor — configure list, category filter, title, icon, "due only" toggle, compact toggle, and "due soon" threshold via the Lovelace UI editor
  • Subscribes to activity_manager_updated events for real-time refresh
  • Falls back to entity scan for list discovery when config-entries WS call is unavailable

Backend rewrite

  • New ActivityManagerCoordinator (DataUpdateCoordinator) owns all data and persistence; entities are CoordinatorEntity and stay in sync automatically
  • Per-entry persistence — each list saves to .activities_list_<entry_id>.json; legacy .activities_list.json is migrated automatically (original backed up to .activities_list.json.bak)
  • Flexible frequency — frequency can be an integer (days) or a dict with days, hours, minutes, seconds; stored alongside pre-computed frequency_ms for fast card rendering
  • Icon support — activities carry an MDI icon field (defaults to mdi:checkbox-outline)
  • WebSocket CRUD (activity_manager/items, /add, /update, /remove) with proper error responses
  • HA services (add_activity, update_activity, remove_activity) updated to match new schema
  • activity_manager_updated bus event fired on every mutation with action, item, and entry_id
  • Config entry migration: v1.1/v1.2 → v1.3 sets unique_id and title from existing data
  • Diagnostics endpoint (async_get_config_entry_diagnostics) for HA built-in diagnostics support

Breaking changes from 0.0.7

  • frequency field is now a dict ({"days": N, ...}) instead of a plain integer; legacy integer values are migrated automatically on first load
  • Per-entry persistence replaces the single shared .activities_list.json (auto-migrated)
  • Card must be re-added to dashboards; the old card element name has changed to activity-manager-card

Don't miss a new activity-manager release

NewReleases is sending notifications on new releases.