Incubator-superset: [SIP] Proposal for Implemention of dynamic theme in superset

Created on 22 Feb 2019  路  4Comments  路  Source: apache/incubator-superset

Motivation:

Supporting dynamic theme in superset will provide end-user to use his/her choice of theme on the go.

Proposed Change:

1> Provide option to change theme from UI.
2> Support of multiple themes
3> Separate theme-able style from other styles (position, size etc)
4> use scss/less mixin to change theme dynamically

this is how the style for any component will look like:

`.btn-primary {
width: 200px;
Padding: 2px;
position: relative;

}

@mixin btn-primary-theme($theme) {

.btn-primary {

color: get-color($theme, primary);
background-colour: get-color($theme, background);
font-size: font-size($theme, button);
}

}
`

New or Changed Public Interfaces:

  • if we use SCSS
    mixin the we need sass-loader (MIT license)
    Enable scss style pre-processor in superset.

  • If we use less.
    Since Less is already supported in superset, don't need any change

Migration Plan and Compatibility

for backward compatibility existing styles will be available.
To use theme user need to use new styles

#SIP

Most helpful comment

@rasmi-ranjan-guavus @mistercrunch MVP proposal using existing CSS Templates:
https://github.com/gbrian/incubator-superset/pull/2

All 4 comments

@mistercrunch any thought on this?

@rasmi-ranjan-guavus @mistercrunch MVP proposal using existing CSS Templates:
https://github.com/gbrian/incubator-superset/pull/2

@mistercrunch, sorry can't find the issue where you posted about how to customize look and feel.

We are evaluating Superset as an analytics platform for our customers so will need to customize for each of them. Thinking on some sort of Multitenancy so look&feel should be defined at "role" level..

BTW What's the difference/relation between: basic.html, base.html, baselayout.html ?

Thanks

Tempted to close this in favor of https://github.com/apache/incubator-superset/issues/9123

The theme from superset-ui used by Emotion in an increasing number of places, is the current inroads to this goal. Over time, there will be less LESS (heh) and more styles using this dynamic theme, which can be overridden or extended in the components in use.

Any objections to closing this one @rasmi-ranjan-guavus ?

Was this page helpful?
0 / 5 - 0 ratings