Sub-theming is used for customizing the look of the site. Custom menu positioning, customizing breakpoints and fixing layout issues quickly in CSS. Writing styles for apps and/or print styles. Custom widgets, form elements, etc. We also integrate TypeScript and attach custom behaviors.
I understand the built-in themes are great for a simple site with content, but if you have lots of custom modules and functionality, then using the built-in theme really limits what you can do.
Currently, I'm looking at upgrading a site to D10, and it has a theme with
base theme: classy
. I'm also looking at solutions to that.So, when upgrading a site from D9 to D10, do I:
- Use the contrib base theme and keep my D9 theme as-is?
- Rewrite the theme from scratch (again) and hope we won't have to next time?
- Something else?
- π¨π¦Canada laceysanderson
> The primary obstacle for this (as I understand it) is that the markup (and CSS selectors) need to be stable. We are currently changing the markup as needed to squash bugs and fix various technical debt issues.
How much is the markup within Olivero still changing at this point? The above was mentioned as the main obstacle 3 years ago and I would love to hear opinions on how much of a concern this still is when it comes to using Olivero as a base theme?
Background:
Like many, I really want to use Olivero as a base theme. I have tried [the script and manual instructions here](https://github.com/mherchel/olivero-subtheme) to setup my own copy of Olivero as recommended by @mherchel but it was quite intense and even after I have it working in the UI as a theme, it is still not functioning from a development standpoint. Specifically, there is no yarn.lock included and running yarn install I get an empty file. When I try to run yarn build:css I get an error because there is no package.json. I'm guessing all of this is due to changes in the structure of the theme when it moved into Drupal core but I have no idea how to go about resolving it.The above issues plus the complicated code base that is Olivero really makes me want to use it as a base theme rather than copy the entire thing over. My above question is so that I can make an informed decision about the amount of breaking likely to be caused by core changes. Tbh even if it's a lot I'm starting to think it would still be less work to adapt to a changing core than it would be to try to incorporate fixes into a forked version or write/maintain our own theme from scratch.