Problem/Motivation
When using kern_ux, it is likely, that one needs some amount of custom css or other theme-related logic to reach their goal.
To make that easier and provide a sensible "breaking point" between the contrib-theme and customizations, we should provide a theme-starterkit.
Proposed resolution
Create starterkit that builds upon the sdc components and contains more specific mapping than the contrib-module - while allowing the user to add customizations.
Also in the starterkit we can add temporarily used concepts like a header and footer - until kern_ux has developed their version of it.
Remaining tasks
Create the starterkit.
Issue fork kern_ux-3563452
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #3
fisherman90Added basic configuration for the starterkit so a theme based on kern_ux can be cloned without the project-files.
Ideas / Feedback welcome :)
Comment #4
fisherman90A discussion regarding the Starterkit arose in slack recently, that I want to bring to here:
Apparently there are multiple ways a theme starterkit can be used:
Which means that updates of the contrib-project do not change the generated theme's behavior and also do not break it.
This means that updates of the contrib-project could potentially break something in the generated theme, but could also "update" it.
The MR !11 currently implements approach 1).
From my point of view the Approach 1) seems more stable, as I often had the experience in the past, that an update of a base-theme would break something in the subtheme. But from the perspective of a Design-System like Kern-UX maybe we want to have the inheritance with the base- and subtheme, because this way there is more "control" on the contrib-project?
I'm not sure, where to go from here, so feedback appreciated :)
If we decide to go another route, maybe I still have some work left.
Comment #5
fisherman90Comment #6
fisherman90This is my first approach to the starterkit, including some integration for dropbuttons, tabs and temporary header / footer until the official ones from the kern team come out, so we can build usable sites until then.
It implements the approach 1) from #4 - so when creating a theme from it, it will create a split-off so updates of the base theme don't break the frontend. This is also the more simple approach, but I guess we can add an option for base- and subtheme at any point later, and most of it works already by declaring our theme as the basetheme if you create a new one.
Also added a setting for sticky headers since I saw the concept in one of the kern_ux demo systems and will need it for my project anyway.
I have to admit, that I also added some custom css but I tried to build it mostly on kern variables.
For stuff like the dropbuttons or local tasks (until the tabs component comes out) I guess this is the best choice for now.
Feedback appreciated :D
Comment #10
fisherman90Branch was updated with current state including form elements :)
Comment #14
christian.wiedemann commentedHi, ich habe den retry branch gemerged. ich hoffe ich habe mich da nicht vertan. Er hatte die letzen besprochenen Änderungen. Wenn ich falsch liege bitte melden.