• Jan. 22, 2023, 10:52 p.m.

    Misago 0.x has "Themes" feature in admin panel where site admins can add custom themes. Those themes can extend other themes (making Misago use the parent theme together with active child one).

    In v4 we could replace this with styles. Style is a set of CSS files + optional image files. Those sets of css files are ordered (and CSS files inside them are also ordered). There's also the "core" style which is the style that comes from Misago's theme (and plugins). The core change is that you could have multiple styles not related to each other active at same time. So you could run core style that does 100% of the CSS, plus extra style that changes the looks of page headers and other one that adds extra styles to posts made by users belonging to specified groups.

    Only risk for this system that I see is users running multiple active themes at same time (running both default style and custom style they've downloaded from somewhere). But we could let style authors set a flag on their style that its "whole thing". Or we could separate themes and "extra styles".

    We could also compile the SASS files in Python, enabling easy theming system that is plugin-compatible.