Thank you for your interest in contributing! Every contribution is welcome.
If you find a bug, open an Issue including:
- Clear description of the problem
- Steps to reproduce
- Expected behavior vs actual behavior
- Screenshots (if applicable)
- Version of Home Assistant and the card
- Configuration (anonymized YAML)
- Browser console logs (F12 → Console)
For new features, open an Issue with:
- Detailed description of the feature
- Concrete use cases (what entity, what state, what theme)
- Mock-ups or sketches (optional but appreciated)
- Fork the repository
- Create a branch for your feature:
git checkout -b feature/my-new-theme
- Develop your feature
- Test on at least one recent Home Assistant version
- Commit with clear messages:
git commit -m 'feat: Add new theme XYZ' - Open a Pull Request with description of changes
- ES6+ — use
const/let, arrow functions, template literals - 2-space indentation
- LitElement patterns — use reactive properties, avoid direct DOM manipulation
- No external dependencies — the card must work with only what HA provides
- CSS custom properties — use
var(--xxx)for HA theme integration
alert-ticker-card.js ← Main card (LitElement, all 9 themes)
alert-ticker-card-editor.js ← Visual editor (LitElement, two tabs)
hacs.json ← HACS metadata
info.md ← HACS quick description
README.md ← Full documentation
CHANGELOG.md ← Version history
- Add the theme key to the
THEMESconstant inalert-ticker-card.js - Add a
_renderMyTheme()method with the ha-card HTML - Add a
case "mytheme":in therender()switch - Add CSS for
.at-mythemeand child elements instatic get styles() - Add the theme to
THEME_OPTIONSinalert-ticker-card-editor.js - Test with 1, 2, and 3+ active alerts
- Document the new theme in
README.mdandCHANGELOG.md