NHL Playoffs Dashboard + Full Bracket Integration (2026)
A complete, data‑driven playoff system for Home Assistant — featuring a full Stanley Cup Playoff bracket, automatic series progression, real‑time game overlays, and a modern Lovelace dashboard layout.
I’ve been building a full NHL Playoffs dashboard that goes beyond single‑team or single‑game cards. This project combines a structured integration, templated sensors, and a modular Lovelace layout to generate a complete playoff bracket with automatic live‑game detection and real‑time stat updates.
This is a full bracket system, not just a card.
What This Project Includes
- Full playoff bracket (all rounds, all matchups, all teams)
- Automatic data pull for every game in the postseason
- Dynamic series progression based on wins
- Live game detection using gamePk and schedule data
- Live Game Card that automatically switches when a game is in progress
- Real‑time stats, including:
- Score
- Period
- Time remaining
- Power play state (PP)
- Empty net (EN)
- Intermission
- Final state
- Team‑themed colors applied dynamically
- Reusable integration folder structure for future seasons
- Clean Lovelace layout designed for wall dashboards or tablets
Live Game Overlay System
Each series card includes a fully dynamic live game status bar, bringing real‑time, broadcast‑style information directly into the bracket.
Live Game Enhancements
- Power Play Indicator (PP Triangle) — highlights the team currently on the power play
- Empty Net Indicator (EN) — appears when a team pulls their goalie
- Live Score Display — home/away scores update instantly
- Period Tracking — 1st, 2nd, 3rd, OT, 2OT, etc.
- Time Remaining — shows period time or INT during intermission
- Compact Broadcast Layout — fits inside each series card without breaking the bracket
How It Works
1. Data Ingestion
The integration pulls structured playoff data for every game, not just one team.
It normalizes:
- Teams
- Seeds
- Matchups
- Series state
- Game schedule
- Live game feed
This ensures the bracket and live card always have the correct context.
2. Bracket Logic
Templated sensors compute:
- Series winners
- Advancement to the next round
- Dynamic bracket positioning
- Team logos, colors, and abbreviations
- Game‑in‑progress state
No manual updates are needed — the bracket updates itself as games finish.
3. Live Game Card
When a game is live, the card automatically switches to that matchup and displays:
- Current score
- Period + ordinal
- Time remaining
- PP status with team‑color highlighting
- EN indicators
- Intermission state
- Final state when the game ends
If no game is live, the card falls back to the next scheduled matchup.
Conference Title Bars
Bold, themed headers visually separate the two sides of the bracket:
Western Conference
- Deep navy gradient
- Blue accent border
- Strong uppercase typography
Eastern Conference
- Deep red gradient
- Red accent border
- Matching typography
Integration Enhancements
New Live Sensor Attributes
live_periodlive_time_remaininglive_intermissionlive_pp_teamlive_empty_net_teamhome_scoreaway_scoregame_state
Coordinator Updates
live_coordinator.py— processes real‑time NHL API dataseries_coordinator.py— improved bracket mapping
Mapping Updates
- Updated round/series logic in
mapping_bracket.py - Cleaner, more reliable bracket progression
Dashboard Layout Improvements
- Western & Eastern conference title bars
- Updated series cards
- Live game overlays
- Cleaner spacing
- Improved readability
Repository
Full code, layout, and integration structure:
GitHub - astlgit/nhl_playoffs_ha_dashboard · GitHub
Collaboration
If anyone is working on NHL data, sports dashboards, or wants to extend this into a full integration, I’m happy to collaborate.
I’m always open to:
- Helping troubleshoot setup issues
- Explaining the bracket logic or sensor structure
- Comparing approaches
- Merging ideas
- Working together on new features
Whether you're customizing it for your team, adapting it for another sport, or building something entirely new — I

