Station Theming #119
alexanderson1993
started this conversation in
Feature Proposals
Replies: 1 comment
-
Marking this as "Accepted" since the feature is basically implemented at this point. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Everybody loves having the ability to customize the way their controls look in Thorium Classic - that's why there are so many layouts included in the controls. You can see most of these below.
I propose instead of embedding themes into the code itself, we make it something that anyone can make. How? By giving them the same tools that we would use to build themes into the controls: code.
A theme will consist of two things: A CSS file and any uploaded assets including images and fonts. The CSS file is able to target the different UI elements, such as buttons, input fields, and containers on the page to change their styling however they need. I tested an arrangement like this with Thorium Nova Prime and it seemed to work well.
For convenience and power, the CSS file will be processed by the backend using a CSS preprocessor, like LESS, and the TailwindCSS JIT Compiler. LESS makes it possible to use variables, mixins, and loops in the CSS, while Tailwind provides CSS Functions which let you access the design tokens for spacing and color used elsewhere in the controls.
This is intended to be an advanced feature for technical users. I don't intend theming to be an easy customization, merely possible. Those with enough dedication will learn CSS, LESS, and Tailwind to accomplish their goals.
Any thoughts or suggestions?
Beta Was this translation helpful? Give feedback.
All reactions