A Home Assistant dark mode theme that provides black or very dark backgrounds wherever possible along with a choice of primary colours.
card-modβ The Card Mod integration is required for this theme.
To ensure all "Pure Black" features (like custom scrollbars and border removals) work correctly, verify you meet these minimum requirements:
| Dependency | Minimum Version | Reason |
|---|---|---|
| Home Assistant | 2022.11.0 |
Required for ha-card border variables. |
| card-mod | 3.0.0 |
Required for theme-level CSS injection. |
This is a simple theme focused on providing a very dark mode look. It's designed to be clean and simple, with a choice of primary colours.
- Black Backgrounds: Black background applied everywhere.
- Primary Colour Choice: Various sub-themes with different foreground colours.
- Cyan
- Green
- Red
- Fuchsia
- Orange
- Purple
- Indigo
- Silver (Monochrome)
- Black Base (Shared Config): A utility theme used for shared logic.
-
Install
card-modvia HACS or per the instructions on its GitHub page. -
Add the following to your
configuration.yamlfile if not present (HA restart required):
frontend:
themes: !include_dir_merge_named themes-
Add this URL as a Custom Repository in HACS.
-
Click Download.
- Under the Home Assistant
configfolder, create a new folder namedthemes. - Copy the theme yaml file into it.
- Run the
frontend.reload_themesaction (Restart Home Assistant ifconfiguration.yamlchanges were made).
- Go to your Profile General tab (bottom left of screen) and change Theme under Browser Settings.
You can use a Home Assistant automation to change the theme at startup, or based on any other time or condition you wish.
Important: In the Profile General screen, you must keep "Use default theme" selected under the Theme settings. If you manually select a specific theme in your profile, the automation will not be able to override it.
Example automation to set the theme at startup:
alias: Set (Default) Theme at Startup
description: >-
This automation allows you to set or change the default theme at Home Assistant Startup, provided you keep the Default Theme selected.
triggers:
- trigger: homeassistant
event: start
conditions: []
actions:
- action: frontend.set_theme
metadata: {}
data:
name: Black with Orange
name_dark: Black with Orange
mode: singleFor technical details on the YAML standards, icon logic, and Shoelace tokens used in this theme, see the Development Reference.
This is a personal project. Support and updates are provided on a "best-effort" basis only. While I use this theme daily and aim to keep it functional with the latest Home Assistant releases, I cannot guarantee immediate fixes for issues or compatibility with all releases.
- Inspired by the excellent
Frosted Glassthemes of @wessamlauf - thank you! - Made possible by @thomasloven and the
card-modcontributors. - This project was developed with the assistance of Gemini AI to ensure code quality and best practices.



