I'm not sure if this is how the bubble card popups are by default or if this is something I can change, but all my bubble card popups extend to the bottom of the screen rather than stopping at the bottom of the last card. How do I get the popup to stop after that last card of the popup?
Bubble Card 3
v3.2.3
Hi everyone!
First, if you missed the v3.2.0 announcement, make sure to check it out before updating!
This new release is a special one! I'm honored to announce that Piitaya, the developer behind Mushroom Card and one of the main frontend developers for Home Assistant, has made his first contribution to Bubble Card! He added the new card suggestions feature, a major addition in Home Assistant 2026.6 that makes the editor even more intuitive for everyone!
There's still room for improvement, and I'm planning to add even more cases with sub-buttons in upcoming releases ![]()
This v3.2.3 also brings several important improvements and fixes to make the experience smoother, including better compatibility with HA 2026.6, improved pop-up editor stability and speed, better performance, and fixes for several edge cases.
Thank you all so much (again) for your support, to the new Patreon members, for your donations, contributions, and for all the feedback that helped improve this release! ![]()
And now, here is everything that has been added and fixed in this release:
New features and enhancements
- Smart entity suggestions:
You can now get card suggestions (HA 2026.6) directly when using the entity card picker! PR #2472 by @piitaya, thank you so much again!
Bug fixes and improvements
-
Centering issues since HA 2026.6:
Fixed centering issues on desktop since Home Assistant 2026.6. #2477 -
Smoother editor performance:
Reduced editor re-renders for a more fluid editing experience, especially for the pop-ups! #2447 -
Fixed pop-up header styling:
Improved how button background colors are handled in the pop-up header to prevent unwanted styling on child cards. #2458 -
Nested pop-up with close action:
close_actionis now only triggered when you manually close a pop-up, not during navigation, allowing nested pop-up navigation like before. #2459 -
Pop-ups always visible on iOS:
Fixed an issue on iOS with HA 2026.5.x where all standalone pop-ups remained visible on the dashboard instead of being hidden, due to a DOM structure change in sections layout. PR #2463 by @nthduy, thank you so much again! -
Pop-up editor refresh after entity suggestion:
The pop-up editor now properly refreshes its preview after adding a card via the new entity suggestion feature. -
And more improvements for better performance and stability...
Bubble News 
Over the past few years, I’ve been working on Bubble Card almost every day to make it the best it can be, and I still can’t believe how much it has grown in popularity. Watching the community getting this big and seeing so many people using my work has been incredibly rewarding ![]()
This is why I decided to create a Patreon as a way to offer something more for those who want to support me. Over the past few months, I’ve released 5 modules that are easily configurable in the editor, like any other feature:
- Bubble Badges 2 - Unlimited badges on any sub-button or the main icon
- Bubble Weather - Animated weather backgrounds with daily/hourly forecasts
- Bubble Calendar Enhanced - Add time and date on buttons or calendar cards with customizable layout options
- Bubble Neon - A dynamic theme that automatically assigns unique vibrant colors to each Bubble Card
- Custom dropdown - Full control over labels, icons, and actions on select cards and sub-buttons
I’m also finally happy with my own dashboard, built entirely with Bubble Card and only new custom modules I've been working on for months! Including one that adds unique colors and styles to all cards, one for the weather, one for graphs, square cards, time... I’ll release more of these modules soon, with a detailed post on Patreon and a new YouTube video. I would love to know what you think!
Thank you so much for being part of this amazing community, your support always makes a huge difference! ![]()
I’ve been wanting to start my own YouTube channel for a while, focusing on tutorials around Home Assistant and Bubble Card, and I really hope you will enjoy my videos. Don’t hesitate to subscribe to help give my channel more visibility. Thank you in advance!
I want to highlight that on the GitHub page, in the Discussions section, you can share and discover some amazing YAML examples from the community. Go check it out! Some of the creations are absolutely incredible!
And if you are interested I've opened a Subreddit for Bubble Card where I post my progress on the project. Here it is:
Also, if you ever want to grab me a fresh beer, here are some easy ways ![]()
CNX Graph Pro v3.0: Multi-Sensor and Dual-Axis Graph Engine
Hi everyone,
Today, I am thrilled to share a major overhaul of my module, CNX Graph Pro, which is stepping up to version v3.0.
For those who are new to it, this module integrates seamlessly into the Bubble Card ecosystem (specifically on button cards) to transform static buttons into dynamic, elegant data monitors. It utilizes background Canvas rendering, making it fully compatible with Neon effects without breaking your card geometry or layout.
The main goal of this V3 release is to definitively break away from what I call the solitary curve syndrome. Displaying an isolated temperature is great, but cross-referencing it instantly with your heating status or a window opening on the exact same button provides true context to your data.
Key Features in v3.0
Multi-Sensor Management (Up to 4 entities): You can now display the main entity of your card plus 3 additional sensors (Slots), each independently configurable.
Performance Optimization (Batch Fetching): No dashboard slowdowns! The module automatically groups history requests to the Home Assistant API into a single, ultra-fast batch call.
Dual-Axis Engine (Double Scale): This is the biggest technical breakthrough. You can bind any additional slot to a secondary axis. This is perfect for overlaying binary states (Day/Night, On/Off, Presence) or percentages (0-100%) on top of temperature or power curves (Watts) without flattening your data.
Total Curve Independence & Z-Index: The days when line thickness or smoothing applied to all curves at once are gone. Each slot now has its own thickness, smoothing controls (curve or step stair), threshold management (presets or custom), and its own Z-Index (-5 to 10) to precisely manage the visual layering order.
Feel free to play with the settings, test your secondary axis configurations, and share screenshots of your new dashboards in the comments below!
Feel free to share your feedback if you integrate it into your dashboards; I'd love to see the result on your interfaces!
Happy tweaking everyone!
It really annoys me that you are posting this shamelessly inside the Bubble Card threat and sort of hijacking it. Why don't you use your own (and new) threat, to let us easily distinguish bubble card information/help from just-another plugin?
Thanks for the feedback. Since my work heavily integrates with Bubble Card, I thought this community would be the right place to share it. My intention was simply to share a module that complements it, not to hijack the thread. You make a fair point, though. I will create a dedicated thread for my plugin to keep this space focused on Bubble Card.
I get its dependant on Bubble Card, and it looks like you’ve done good work, but your patreon is also 50% more than what Clooos is asking for and it relies on his work. At a MAXIMUM it should be 50%.
I think making your own thread is a good idea.
2026, here we come with asking money for yaml code. I see this more and more happening, while the purpose is an open source.
Looks good, but asking money for code which Gemini or ChatGPT can write is just strange.
I quite disagree.
OpenSource isn't free of charge.
Also Nabucasa is paid service.
I paid @Cedynamix for download some module, and with the discount cupon is the price of a coffe.
Sandro
Great for you and cedynamix!
Now let's focus on bubble-card here as the name of the threat implies, and not another extension of the module who would like to benefit of the succes of it. There are other channels for that, which do not belong in the main threat. (See the bubble-card Q&A on GH please)
Let everybody and every integration build its own reputation. Thank you
Hi - bit of an odd one this ...
I have been able to update HACS so I can see Bubble Card Tools but every time I download in the store I get.
"This integration does not support configuration via the UI. If you followed this link from the Home Assistant website, make sure you run the latest version of Home Assistant."
Appoligies if this is a user error but any suggestions would be welcome.
I've cleaned my cache, rebooted etc with no change, HACS works fine for installing other apps.
- Installation methodHome Assistant OS
- Core2026.6.4
- Supervisor2026.06.2
- Operating System18.0
- Frontend20260527.7
Thanks
Terran
Hi,
is there a way to disable the slider when the entity is off?
example:
Light entity = off
disable the slider for brightness
thank you
I had the same issue and it is indeed tricky !
I did this in styles to disable the slider pointer-events when state is not on
/* slider deactivated when entity is not on */
/* without deactivating sub-buttons nor card icon */
.bubble-range-slider, .slider-container {
pointer-events: ${state === 'on' ? 'auto' : 'none'} !important;
}
.bubble-icon-container,
.bubble-sub-button,
.bubble-buttons-container {
pointer-events: auto !important;
}
Bubble Card 3
v3.2.4
Hi everyone!
First, if you missed the v3.2.0 announcement, make sure to check it out before updating!
This release took a little longer than expected to arrive. Between the heatwave that hit Europe over the past few weeks and the new issues that were reported, progress was a bit slower than usual ![]()
Over the past few months, the pop-up migration introduced in v3.2.0 brought much more complexity than I initially anticipated. While it enabled many new possibilities and performance improvements, it also introduced several edge cases, especially around standalone pop-ups placed inside stacks. I'd like to apologize (again) to everyone who ran into these issues. Fixing them ended up taking much more time than expected and delayed some of the modules and features I had originally planned to release by now.
The good news is that this release significantly improves the creation and editing experience for standalone pop-ups, especially when they are used inside stacks, while also bringing many stability, editor, memory management, and performance improvements. A lot of older issues have finally been resolved, and the issue tracker is smaller than it was just a few weeks ago (which is always great to see)!
As always, thank you all for your support, bug reports, contributions, patience... and for helping make Bubble Card better with every release ![]()
And now, here is everything that has been added and fixed in this release:
New features and enhancements
- Better object selector and more improvements for module developers:
The object selector is now more powerful with support for groups, conditional fields, variants, reordering... and more! PR #2489 by @szsolt, thank you so much!
Bug fixes and improvements
-
Standalone pop-ups in
vertical-stack-in-card:
Standalone pop-ups now work properly when placed inside avertical-stack-in-card. #2412 -
Fixed standalone pop-up edition in vertical-stack:
Fixed issues with removing, duplicating, and moving cards from standalone pop-ups inside vertical stacks. #2499 #2437 -
Fixed standalone pop-up creation inside vertical stack:
Pop-ups can now be created correctly inside vertical stacks without any issues. -
Warning for nested standalone pop-ups in editor:
A warning is now shown in the editor when nested standalone pop-ups are detected. -
Prevent parent dialog reopen:
Fixed an issue where closing a grandchild editor in a pop-up editor would incorrectly reopen the parent dialog. #2412 -
Fully removed pop-up host from DOM:
Pop-up hosts are now fully removed from the DOM when closed, preventing memory leaks and stale references. #2476 #2494 -
Optimized pop-up wake sync:
Pop-up synchronization on wake is now faster by filtering only visible pop-ups and optimizing context handling. -
Eliminated forced reflows during pop-up open:
Performance improvement by eliminating forced reflows during pop-up open for a smoother experience. -
"Use default entity" toggle with perform-action:
Fixed errors on icon actions when the "Use default entity" toggle is enabled. Should fix #2220 -
Respect
assumed_stateattribute in cover cards:
Open/close buttons now properly respect theassumed_stateattribute. #788 #2404 -
Clear sub-button state/attribute text on empty value:
Sub-button state and attribute text are now cleared when the value becomes empty. #2117 #2272 -
Better icon resolution:
Icon resolution now aligns better with Home Assistant's approach, fixing icons like "Moon phase". #2369 #2142 #1174 -
Icons not loading fixed:
Additional fixes for icons not loading properly. #2369 -
Prevent "undefined" in pop-up header:
Fixed an issue where "undefined" text would appear in the pop-up header whennameis not defined. #2423 -
Prevent iOS text enlargement whith scrolling texts:
Fixed iOS text enlargement that randomly occurred on scrolling containers. #1572 -
Cached last changed and updated timestamps:
Performance improvement by cachinglast_changedandupdatedtimestamps. PR #2508 by @IoannisArmamentos, thank you so much!
-
Cleaned up media player outside click listener:
Fixed a memory leak by properly cleaning up the media player outside click listener. PR #2509 by @IoannisArmamentos, thank you so much!
-
Optimized JS template processing:
JS template processing now includes memoization and side-effect detection for better performance. -
And (much) more performance and editor improvements...
Bubble News 
Over the past few years, I’ve been working on Bubble Card almost every day to make it the best it can be, and I still can’t believe how much it has grown in popularity. Watching the community getting this big and seeing so many people using my work has been incredibly rewarding ![]()
This is why I decided to create a Patreon as a way to offer something more for those who want to support me. Over the past few months, I’ve released 5 modules that are easily configurable in the editor, like any other feature:
- Bubble Badges 2 - Unlimited badges on any sub-button or the main icon
- Bubble Weather - Animated weather backgrounds with daily/hourly forecasts
- Bubble Calendar Enhanced - Add time and date on buttons or calendar cards with customizable layout options
- Bubble Neon - A dynamic theme that automatically assigns unique vibrant colors to each Bubble Card
- Custom dropdown - Full control over labels, icons, and actions on select cards and sub-buttons
I’m also finally happy with my own dashboard, built entirely with Bubble Card and only new custom modules I've been working on for months! Including one that adds unique colors and styles to all cards, one for the weather, one for graphs, square cards, time... I’ll release more of these modules soon, with a detailed post on Patreon and a new YouTube video. I would love to know what you think!
Thank you so much for being part of this amazing community, your support always makes a huge difference! ![]()
I’ve been wanting to start my own YouTube channel for a while, focusing on tutorials around Home Assistant and Bubble Card, and I really hope you will enjoy my videos. Don’t hesitate to subscribe to help give my channel more visibility. Thank you in advance!
I want to highlight that on the GitHub page, in the Discussions section, you can share and discover some amazing YAML examples from the community. Go check it out! Some of the creations are absolutely incredible!
And if you are interested I've opened a Subreddit for Bubble Card where I post my progress on the project. Here it is:
Also, if you ever want to grab me a fresh beer, here are some easy ways ![]()
First of all: thanks @Cloos for your great job. Bubble-card is a great help for my dashboards, but there is a nasty little thing which I couldn’t solve till now.
I’m using some Shelly Display and found out that they react much better to taps when the dashboard entirely fitts on screen.
So I used custom:grid-layout an managed to get all my buttons on the dashboard fitting perfectly. So far so good. Here the “nasty little thing”: I wanted to be signaled when the doorbell rings and to achieve that without wasting space on the dashboard I did following. I added a cutom:buttle-card with card_type:pop-up containing a custom:grid-.layout in it having only one custom:button-card with the bell icon on it. The popup is triggered by the doorbell.
All works fine, but the bubble-card html placeholder has a margin of 4 px which makes my dashboard now not fitting perfectly and sometimes scrolling a bit instead of taking the tap as a tap.
How can I get rid of the margin?
Here is the YAML of the dashboard
kiosk_mode:
non_admin_settings:
kiosk: true
views:
- type: custom:grid-layout
layout:
grid-template-columns: 50% 50%
grid-template-rows: auto auto auto
grid-template-areas: |
"1 2"
"3 4"
"5 6"
styles: |
* {
height: 99%;
}
cards:
- type: button
view_layout:
grid_area: 1
show_name: false
show_icon: true
icon: mdi:arrow-up-bold
tap_action:
action: perform-action
perform_action: >-
script.close_shutter_and_switch_cover_automation_helper_on_duplizieren
target: {}
data:
cover: cover.rollladen_gastebad
action: open
manual_override_helper: input_boolean.cover_automation_helper_gastebad_rollladen
hold_action:
action: perform-action
perform_action: >-
script.close_shutter_and_switch_cover_automation_helper_on_duplizieren
target: {}
data:
cover: cover.rollladen_gastebad
action: open
manual_override_helper: input_boolean.cover_automation_helper_gastebad_rollladen
name: Auf
- type: button
view_layout:
grid_area: 2
show_name: false
show_icon: true
icon: mdi:arrow-down-bold
tap_action:
action: perform-action
perform_action: >-
script.close_shutter_and_switch_cover_automation_helper_on_duplizieren
target: {}
data:
cover: cover.rollladen_gastebad
action: close
manual_override_helper: input_boolean.cover_automation_helper_gastebad_rollladen
hold_action:
action: perform-action
perform_action: >-
script.close_shutter_and_switch_cover_automation_helper_on_duplizieren
target: {}
data:
cover: cover.rollladen_gastebad
action: close
manual_override_helper: input_boolean.cover_automation_helper_gastebad_rollladen
name: Zu
- type: custom:mini-graph-card
view_layout:
grid_area: 3
name: Außen
entities:
- sensor.wetterstation_outdoor_temperature
decimals: 1
font_size: 150
- type: custom:mini-graph-card
view_layout:
grid_area: 4
entities:
- sensor.thermometer_gastebad_temperatur
name: Innen
decimals: 1
font_size: 150
- type: button
view_layout:
grid_area: 5
show_name: true
show_icon: true
icon: mdi:shower-head
show_state: false
tap_action:
action: perform-action
perform_action: script.dusch_szenario_gastebad
target: {}
hold_action:
action: perform-action
perform_action: script.dusch_szenario_gastebad
target: {}
name: Duschen
entity: switch.zirkulationspumpe_brauchwasser
- type: clock
view_layout:
grid_area: 6
clock_style: digital
clock_size: large
show_seconds: false
no_background: false
- type: custom:bubble-card
styles: |
* {
margin: 0 !important;
}
card_type: pop-up
view_layout:
grid_area: 6
hash: "#doorbell"
trigger_entity: binary_sensor.flur_eg_klingel_tur
trigger_state: "on"
popup_mode: centered
popup_style: classic
bg_opacity: 0
show_close_button: false
close_on_click: true
auto_close: 10000
cards:
- type: custom:grid-layout
layout:
grid-template-columns: 100%
grid-template-rows: 100%
grid-template-areas: |
"1"
cards:
- type: custom:button-card
icon: mdi:bell
tap_action: none
hold_action: none
icon_height: 200
name: Türklingel
view_layout:
grid_area: 1
styles:
icon:
- color: red
Bubble Card 3
v3.2.5
Hi everyone!
First, if you missed the v3.2.0 announcement, make sure to check it out before updating!
This release brings something many of you have been requesting for a long time: tilt support on cover cards! If you have blinds, venetian blinds, or any cover with a tilt mechanism, you can now control the tilt angle directly from the card, with dedicated buttons, through a slider, or inside a slider sub-button.
I’m sorry it took so long to get here. I don’t have tilt functionality on my own covers, so I had to build and test everything using a fake cover template. I really hope you’ll find this new feature useful! ![]()
On top of that, this release fixes a frustrating issue where the Save button stayed disabled after editing child cards in a standalone pop-up (since HA 2026.7), as well as some layout compatibility problems that were showing up with custom:grid-layout and other custom cards.
I also significantly improved the standalone pop-up logic. Long-term pop-up performance should now be noticeably better, with much lower CPU and memory usage across all setups ![]()
As always, thank you all for your support, bug reports, and patience (this release was more complicated than I expected)! ![]()
And now, here is everything that has been added and fixed in this release:
New features and enhancements
- Tilt support for cover cards:
Cover cards now support tilt open/close buttons for covers with a tilt mechanism. You can position the tilt buttons anywhere (top, bottom, left, right, or hidden), and even use a slider to control the tilt position directly with the newcover_slider_type: tilt_positionoption. New config options includeopen_tilt_serviceandclose_tilt_servicefor custom tilt services. #2127
Bug fixes and improvements
-
Fixed disabled “Save” button in standalone pop-up editor:
When editing a child card from within a standalone pop-up editor, closing the child editor would reopen the parent dialog,but the “Save” button stayed disabled, making it (almost) impossible to save your changes. This is now fixed! #2437 -
Fixed enlarged cards with
custom:grid-layout:
Cards placed inside acustom:grid-layoutwere displayed larger than expected. This has been fixed. #2448 -
Prevent hiding shared
hui-cardin layout boundaries:
When a pop-up is hosted inside layout structures like grid or masonry, the nearest wrappinghui-cardis no longer hidden, preserving the visibility of shared elements. #2514 -
Improved pop-up detach logic:
Pop-up shells are now properly detached from the DOM when leaving editor mode, with deferred shell creation for inactive standalone pop-ups and enhanced wake sync to prevent re-opening of closed pop-ups. #2476 -
And more…
Bubble News 
Over the past few years, I’ve been working on Bubble Card almost every day to make it the best it can be, and I still can’t believe how much it has grown in popularity. Watching the community grow and seeing so many people using my work has been incredibly rewarding ![]()
That’s why I decided to launch a Patreon, as a way to offer something more to those who want to support me. Thanks to your support, I’m now able to work on this project full-time from home with my family, which is truly a dream come true.
Since then, I’ve released six modules that can be configured directly from the editor, just like any other Bubble Card feature. I’m also doing my best to release a new module every month.
|
Bubble Weather Animated weather backgrounds with daily/hourly forecasts |
Bubble Badges 2 Unlimited badges on any sub-button or the main icon |
|
Bubble Calendar Enhanced Add time and date on buttons or calendar cards with customizable layout options |
Bubble Neon A dynamic theme that automatically assigns unique vibrant colors to each Bubble Card |
|
Custom dropdown Full control over labels, icons, and actions on select cards and sub-buttons |
Bubble Quick Launcher Turn your sub-buttons card into a clean and compact launcher grid, perfect for room controls, navigation menus, scenes, and quick actions |
I’m also finally happy with my own dashboard, built entirely with Bubble Card and only new custom modules I’ve been working on for months! Including one that adds unique colors and styles to all cards, one for the weather, one for graphs, square cards, time… I’ll release more of these modules soon, with a detailed post on Patreon and a new YouTube video. I would love to know what you think!
Thank you so much for being part of this amazing community, your support always makes a huge difference! ![]()
I’ve been wanting to start my own YouTube channel for a while, focusing on tutorials around Home Assistant and Bubble Card, and I really hope you will enjoy my videos. Don’t hesitate to subscribe to help give my channel more visibility. Thank you in advance!
I want to highlight that on the GitHub page, in the Discussions section, you can share and discover some amazing YAML examples from the community. Go check it out! Some of the creations are absolutely incredible!
And if you are interested I’ve opened a Subreddit for Bubble Card where I post my progress on the project. Here it is:
Also, if you ever want to grab me a fresh beer, here are some easy ways ![]()
I love this card, can you share the YAML?







