Flame Connect is an async Python library for controlling Dimplex, Faber, and Real Flame fireplaces via the Flame Connect cloud API. It includes a CLI and an optional TUI dashboard.
This project uses uv for package management. Do not use pip directly.
Install dependencies with:
uv sync --devAfter syncing, install pre-commit hooks:
uv run pre-commit install --install-hooksAdd packages with:
uv add <package>Use conventional commit formatting for pull request titles and descriptions. The pull request title and description should typically match the message and description of the first commit.
# Lint and type-check
uv run ruff check .
uv run mypy src/
# Run tests
uv run pytest- The library is async-first, using
aiohttpfor HTTP communication. - Authentication is handled via
msalagainst Azure AD B2C. - The optional TUI is built with the
textualframework (installed via thetuiextra). - Strict
mypytype checking is enforced across the entiresrc/directory. - Test coverage must remain at or above 95%.
- New code must include corresponding tests.