Sure, no problem. These are the first 4, but i hope you’ll get what you want!?
type: vertical-stack
cards:
- type: custom:mushroom-title-card
title: Kamers
card_mod:
style: |
ha-card {
margin-top: -10px;
margin-bottom: -10px;
margin-left: 1px;
margin-right: 1px;
--title-font-size: 16px !important;
}
- type: custom:layout-card
layout_type: custom:horizontal-layout
cards:
- type: horizontal-stack
cards:
- type: custom:stack-in-card
cards:
- type: custom:mushroom-template-card
primary: Woonkamer
secondary: >-
{{ states("sensor.mi_air_purifier_3_3h_temperature") |
round(0) }} °C
icon: mdi:sofa
entity: light.woonkamer_lampen
tap_action:
action: navigate
navigation_path: woonkamer
hold_action:
action: toggle
icon_color: '{{ ''yellow'' if is_state(entity, ''on'') else ''disabled'' }}'
fill_container: true
layout: horizontal
multiline_secondary: false
card_mod:
style: |
:host([dark-mode]) {
background-blend-mode: darken;
}
:host {
background-image: url('/local/woonkamer.jpg') , linear-gradient(to right, rgba(var(--rgb-card-background-color), 1), rgba(var(--rgb-card-background-color), 0));
background-size: 50% 100%;
background-position: right;
background-repeat: no-repeat;
background-blend-mode: lighten;
background-color: rgba(var(--rgb-card-background-color), 0.5);
{% if is_state('light.woonkamer_lampen', 'on') %}
box-shadow: 0 0 20px rgba(0, 150, 136, 0.6);
{% endif %}
--mush-icon-size: 56px;
height: 66px;
margin-left: -10px !important;
}
ha-card {
{% if is_state('light.woonkamer_lampen', 'on') %}
--primary-text-color: {{ 'rgb(var(--rgb-yellow))'}};
{% endif %}
}
- type: custom:mushroom-chips-card
chips:
- type: conditional
conditions:
- entity: binary_sensor.woonkamer_voorkant_contact
state: 'on'
chip:
type: template
double_tap_action:
action: none
entity: cover
icon: >
{% set
state=states('binary_sensor.woonkamer_voorkant_contact')
%}
{% if state=='off' %}
fapro:door-closed
{% elif state=='on' %}
phu:lift-out-window-open
{% else %}
fapro:door-closed
{% endif %}
icon_color: >-
{% set
state=states('binary_sensor.woonkamer_voorkant_contact')
%}
{% if state=='off' %}
green
{% elif state=='on' %}
red
{% else %}
yellow
{% endif %}
card_mod:
style: >
{% if
is_state('binary_sensor.woonkamer_voorkant_contact',
'on') %}
ha-card {
animation: borderPulse 2s ease-out infinite;
}
@keyframes borderPulse {
50% {
box-shadow: 0 0 20px red;
}
}
{% endif %}
content: null
tap_action:
action: toggle
hold_action:
action: none
- type: conditional
conditions:
- entity: media_player.woonkamer
state_not: 'off'
- entity: media_player.woonkamer
state_not: unavailable
- entity: media_player.woonkamer
state_not: standby
- entity: media_player.woonkamer
state_not: paused
chip:
type: template
icon_color: red
icon: |-
{% set media_type = state_attr('media_player.woonkamer',
'app_name') %}
{% if media_type == 'NLZIET' %}
ios:nlziet-2
{% elif media_type == 'Netflix' %}
mdi:netflix
{% elif media_type == 'Videoland' %}
phu:videoland
{% elif media_type == 'Youtube' %}
mdi:youtube
{% elif media_type == 'Spotify' %}
mdi:spotify
{% elif media_type == 'Disney+' %}
phu:disney-plus
{% elif media_type == 'myTuner' %}
mdi:radio
{% else %}
mdi:plex
{% endif %}
tap_action:
action: none
hold_action:
action: none
- type: conditional
conditions:
- entity: media_player.woonkamer_muziek
state_not: 'off'
- entity: media_player.woonkamer_muziek
state_not: unavailable
chip:
type: template
icon_color: blue
picture: >-
{{ state_attr('media_player.woonkamer_muziek',
'entity_picture') }}
tap_action:
action: none
hold_action:
action: none
card_mod:
style: |
ha-card {
{% set speed = state_attr('media_player.woonkamer_jbl','volume_level') %}
{% set animation = (1.25 - 2*speed) %}
animation: music {{animation}}s ease-in-out infinite alternate;
transform-origin: 50% 100%
} @keyframes music {
0%, 100% { transform: translateY(0px) scaleX(1); }
20% { transform: translateY(2px) scaleX(0.9); }
40% { transform: rotateY(10deg) rotateZ(-10deg); }
60% { transform: translateY(-4px) scaleX(1.1); }
80% { transform: rotateY(-10deg) rotateZ(10deg); }
}
- type: conditional
conditions:
- entity: group.lounge_windows
state: 'on'
chip:
type: template
icon_color: disabled
icon: mdi:window-open
tap_action:
action: none
hold_action:
action: none
alignment: end
card_mod:
style: |
ha-card {
--chip-box-shadow: none;
--chip-background: none;
--chip-spacing: 0;
}
card_mod:
style: |
ha-card {
background: none;
box-shadow: 0px 0px;
height: 102px;
}
- type: custom:stack-in-card
cards:
- type: custom:mushroom-template-card
primary: Keuken
secondary: '{{ states("sensor.keuken_temp_temperature") | round(0) }} °C'
icon: fapro:knife-kitchen
entity: light.keuken_lampen
tap_action:
action: navigate
navigation_path: keuken
hold_action:
action: toggle
icon_color: '{{ ''yellow'' if is_state(entity, ''on'') else ''disabled'' }}'
fill_container: true
layout: horizontal
multiline_secondary: false
card_mod:
style: |
:host([dark-mode]) {
background-blend-mode: darken;
}
:host {
background-image: url('/local/kitchen.jpg') , linear-gradient(to right, rgba(var(--rgb-card-background-color), 1), rgba(var(--rgb-card-background-color), 0));
background-size: 50% 100%;
background-position: right;
background-repeat: no-repeat;
background-blend-mode: lighten;
--mush-icon-size: 56px;
height: 66px;
margin-left: -10px !important;
background-color: rgba(var(--rgb-card-background-color), 0.5);
{% if is_state('light.keuken_lampen', 'on') %}
box-shadow: 0 0 20px rgba(0, 150, 136, 0.6);
{% endif %}
}
ha-card {
{% if is_state('light.keuken_lampen', 'on') %}
--primary-text-color: {{ 'rgb(var(--rgb-yellow))'}};
{% endif %}
}
- type: custom:mushroom-chips-card
chips: null
alignment: end
card_mod:
style: |
ha-card {
--chip-box-shadow: none;
--chip-background: none;
--chip-spacing: 0;
}
card_mod:
style: |
ha-card {
background: none;
box-shadow: 0px 0px;
height: 102px;
}
- type: horizontal-stack
cards:
- type: custom:stack-in-card
cards:
- type: custom:mushroom-template-card
primary: Tuin
secondary: >-
{{ states("sensor.tuin_temperatuur_temperature") | round(0) }}
°C
icon: fapro:flower-daffodil
entity: light.tuin_lampen
tap_action:
action: navigate
navigation_path: tuin
hold_action:
action: toggle
icon_color: '{{ ''yellow'' if is_state(entity, ''on'') else ''disabled'' }}'
fill_container: true
layout: horizontal
multiline_secondary: false
card_mod:
style: |
:host([dark-mode]) {
background-blend-mode: darken;
}
:host {
background-image: url('/local/garden.jpg') , linear-gradient(to right, rgba(var(--rgb-card-background-color), 1), rgba(var(--rgb-card-background-color), 0));
background-size: 50% 100%;
background-position: right;
background-repeat: no-repeat;
background-blend-mode: lighten;
--mush-icon-size: 56px;
height: 66px;
margin-left: -10px !important;
background-color: rgba(var(--rgb-card-background-color), 0.5);
{% if is_state('light.tuin_lampen', 'on') %}
box-shadow: 0 0 20px rgba(0, 150, 136, 0.6);
{% endif %}
}
ha-card {
{% if is_state('light.tuin_lampen', 'on') %}
--primary-text-color: {{ 'rgb(var(--rgb-yellow))'}};
{% endif %}
}
- type: custom:mushroom-chips-card
chips:
- type: conditional
conditions:
- entity: binary_sensor.achterdeur_contact
state: 'on'
chip:
type: template
double_tap_action:
action: none
entity: cover
icon: >
{% set state=states('binary_sensor.achterdeur_contact')
%}
{% if state=='off' %}
fapro:door-closed
{% elif state=='on' %}
fapro:door-open
{% else %}
fapro:door-closed
{% endif %}
icon_color: >-
{% set state=states('binary_sensor.achterdeur_contact')
%}
{% if state=='off' %}
green
{% elif state=='on' %}
red
{% else %}
yellow
{% endif %}
card_mod:
style: >
{% if is_state('binary_sensor.achterdeur_contact',
'on') %}
ha-card {
animation: borderPulse 2s ease-out infinite;
}
@keyframes borderPulse {
50% {
box-shadow: 0 0 20px red;
}
}
{% endif %}
content: null
tap_action:
action: toggle
hold_action:
action: none
alignment: end
card_mod:
style: |
ha-card {
--chip-box-shadow: none;
--chip-background: none;
--chip-spacing: 0;
}
card_mod:
style: |
ha-card {
background: none;
box-shadow: 0px 0px;
height: 102px;
}
- type: custom:stack-in-card
cards:
- type: custom:mushroom-template-card
primary: Slaapkamer
secondary: >-
{{ states("sensor.slaapkamer_temp_temperature") | round(0) }}
°C
icon: fapro:bed
entity: light.slaapkamer_alle_lampen
tap_action:
action: navigate
navigation_path: slaapkamer
hold_action:
action: toggle
icon_color: '{{ ''yellow'' if is_state(entity, ''on'') else ''disabled'' }}'
fill_container: true
layout: horizontal
multiline_secondary: false
card_mod:
style: |
:host([dark-mode]) {
background-blend-mode: darken;
}
:host {
background-image: url('/local/slaapkamer.jpg') , linear-gradient(to right, rgba(var(--rgb-card-background-color), 1), rgba(var(--rgb-card-background-color), 0));
background-size: 50% 100%;
background-position: right;
background-repeat: no-repeat;
background-blend-mode: lighten;
--mush-icon-size: 56px;
height: 66px;
margin-left: -10px !important;
background-color: rgba(var(--rgb-card-background-color), 0.5);
{% if is_state('light.mantra_smart_ceiling_fan', 'on') %}
box-shadow: 0 0 20px rgba(0, 150, 136, 0.6);
{% endif %}
}
ha-card {
{% if is_state('light.mantra_smart_ceiling_fan', 'on') %}
--primary-text-color: {{ 'rgb(var(--rgb-yellow))'}};
{% endif %}
}
- type: custom:mushroom-chips-card
chips:
- type: conditional
conditions:
- entity: binary_sensor.slaapkamer_raam_contact
state: 'on'
chip:
type: template
double_tap_action:
action: none
entity: cover
icon: >
{% set
state=states('binary_sensor.slaapkamer_raam_contact') %}
{% if state=='off' %}
fapro:door-closed
{% elif state=='on' %}
phu:lift-out-window-open
{% else %}
fapro:door-closed
{% endif %}
icon_color: >-
{% set
state=states('binary_sensor.slaapkamer_raam_contact') %}
{% if state=='off' %}
green
{% elif state=='on' %}
red
{% else %}
yellow
{% endif %}
card_mod:
style: >
{% if
is_state('binary_sensor.slaapkamer_raam_contact',
'on') %}
ha-card {
--chip-box-shadow: none;
--chip-background: none;
--chip-spacing: 0;
animation: borderPulse 2s ease-out infinite;
}
@keyframes borderPulse {
50% {
box-shadow: 0 0 20px red;
}
}
{% endif %}
content: null
tap_action:
action: toggle
hold_action:
action: none
- type: conditional
conditions:
- entity: media_player.slaapkamer_tv
state_not: 'off'
- entity: media_player.slaapkamer_tv
state_not: unavailable
chip:
type: template
icon_color: red
icon: >-
{% set media_type =
state_attr('media_player.slaapkamer_tv',
'app_name') %}
{% if media_type == 'tvshow' %}
mdi:television-classic
{% elif media_type == 'Netflix' %}
mdi:netflix
{% elif media_type == 'Videoland' %}
mdi:video
{% elif media_type == 'YouTube' %}
mdi:youtube-tv
{% else %}
mdi:plex
{% endif %}
tap_action:
action: none
hold_action:
action: none
card_mod:
style: |
ha-card {
--chip-box-shadow: none;
--chip-background: none;
--chip-spacing: 0;
}
- type: conditional
conditions:
- entity: fan.mantra_smart_ceiling_fan
state: 'on'
chip:
type: template
icon_color: green
icon: mdi:fan
tap_action:
action: none
hold_action:
action: none
card_mod:
style: |
ha-card {
--chip-box-shadow: none;
--chip-background: none;
--chip-spacing: 0;
animation: spin 1s linear infinite;
}
alignment: end
card_mod:
style: |
ha-card {
background: none;
box-shadow: 0px 0px;
height: 102px;
}
view_layout:
grid-area: favorites