I built a small Lovelace custom card that renders animated falling snowflakes as a full-screen overlay on your dashboard. Every snowflake is individually defined with its own size, speed, drift, rotation, and opacity — no two fall exactly the same way.
Why not just use the built-in Winter Mode?
Home Assistant 2025.12 introduced Winter Mode in Labs, and it's a nice touch. But it has some limitations that pushed me to build this:
| Winter Mode (Labs) | HA Snowflakes Card | |
|---|---|---|
| Color | White only | Any color or hex |
| Per-dashboard control | ||
| Automation / conditional | conditional card |
|
| Works for all users | ||
| Snowflake count | Fixed | Configurable |
| Multiple layers |
Installation
Or add Xornop/ha-snowflakes-card manually as a custom repository in HACS under Frontend.
Usage
type: custom:snowflakes-card
color: "#ffffff"
All options:
| Option | Default | Description |
|---|---|---|
color |
#ffffff |
Any CSS color or hex value |
count |
50 |
Number of snowflakes (max 50) |
opacity |
1 |
Global opacity multiplier (0–1) |
Examples
Wrap it in a conditional card to automate it:
type: conditional
conditions:
- entity: input_boolean.christmasmode
state: "on"
card:
type: custom:snowflakes-card
color: "#ffffff"
Or use two instances for a layered effect — white flakes at night, green during the day:
type: grid
cards:
- type: conditional
conditions:
- entity: input_boolean.christmasmode
state: "on"
- condition: state
entity: sun.sun
state: below_horizon
card:
type: custom:snowflakes-card
color: "#ffffff"
- type: conditional
conditions:
- entity: input_boolean.christmasmode
state: "on"
- condition: state
entity: sun.sun
state: above_horizon
card:
type: custom:snowflakes-card
color: "#507828"
opacity: 0.7
Feedback and PRs welcome — repo is at GitHub - Xornop/ha-snowflakes-card: An invisible card to get better snowflakes on your dashboard. · GitHub