Inheriting one theme from another

The collection of themes is increasing with the help of the community. As far as I understand the theme code is in one file only(?)

Sometimes when using a theme, the code page is missing some code for some UI-card or maybe you want to change some parameter in the theme code. If the later when the theme is updated your code will me overwritten.

To be able to overwrite something in the original theme and add some extra code while maintaining an easy update of the original theme, adding a standard include file (or something) in the original theme that overwrites/adds would be a helpful functionality.
This way when the original theme is updated and your code is still there and working.

Please vote if you like this functionality.

That’s not true.
You can use a folder with a file for each theme.

frontend:
  themes: !include_dir_merge_named themes

and the themes/theme_name.yaml look like

teal:
  # Main Stuff #
  primary-color: "#1DE9B6" # Primary (most of the UI)
  ...

This is also needed to manege themes with HACS.

But can I overwrite some code in the main code page with some code in another code page?
Like a Master file is modified by a child file?

Sorry, i think i misunderstood your request.

No worries.

Would a solution be that in a theme folder, the main theme file (Master) has to have an standard include file reference “ZUSERMOD” (to a child) code page.

Then when the theme is selected HA combines these two files and uses the child parameters over the Masters

Linking here my question related to this and upvoting.

Possible to rename the feature request a bit. Something about inheriting one theme from another or deriving one theme from another etc. Right now it’s pretty unclear what the request is asking for from the title.
Also - I’m upvoting it since I discovered yesterday that this feature doesn’t exist :+1:t2:

I’m a web developer working solely with Wordpress. Wordpress themes work in this way. You can have a child theme for any theme. And css code you add in that child theme will supercede the code in the original theme. That way, if the theme get’s updated, your code will remain intact.

It would be great to have this in HA too!

2 Likes