User talk:Protnet/Frontend for Vector skin CSS customizations

From mediawiki.org
Latest comment: 9 years ago by Mdowdell in topic Wikia ThemeDesigner

Can you provide specific, detailed examples of how you would implement 2 or more interesting layout changes? I am curious both from a user interface perspective and a technical perspective. GICodeWarrior (talk) 02:56, 21 March 2014 (UTC)Reply

I've just provided a detailed example of how you can change title styling. Is it clear? Or should I explain in more technical detail? Second example on its way. --Ioannis Protonotarios 16:18, 21 March 2014 (UTC)Reply
Great example thanks. Based on that, are you going to build customization forms with options for every desirable customization? Or do you intend to have more free-form customization as well? GICodeWarrior (talk) 17:59, 21 March 2014 (UTC)Reply
My intention is to built detailed forms with almost every essential option on the tip of your mouse. Of course it's not possible to have all CSS converted to forms (and it's not a good idea either). A selection of what is needed and what not will be done. But the result, in terms of size, will be similar to MediaWiki user prefs. But I don't think free-form is something the average end-user would benefit from. --Ioannis Protonotarios 18:25, 21 March 2014 (UTC)Reply
OK, that makes sense. Thanks. :-) GICodeWarrior (talk) 01:06, 22 March 2014 (UTC)Reply

[copying from my user talk page, just for the record] I like your idea. Its high time that MediaWiki stopped requiring its users know CSS to make minor changes to the interface, like colour scheme. In terms of implementation, I would definitely recommend an extension. There's probably many implementation paths you could take. One of them could be having a special page, which stores various "properties" in its own DB table, and also implements a custom ResourceLoader module to output the custom CSS. I would recommend concentrating on making the GUI interface and finding things that can easily customizable, and not trying to parse existing CSS, as parsing CSS is probably going to be a hard problem, especially with edge cases, and is less interesting than the main part of the extension. You may want to make it so that your extension could be extensible by other extensions, so that people making skins could hook into your extension, and add new things to customize. Bawolff (talk) 03:08, 21 March 2014 (UTC)Reply

Thanks for your feeback. I've integrated your advice into the proposal. --Ioannis Protonotarios 16:18, 21 March 2014 (UTC)Reply

Only Vector?[edit]

Would this be developed in such a way as to make it possible to "import" other skins than just Vector into the system? Because personally I would consider that a prerequisite :) From reading the proposal I get the impression that one would just have to define a bunch of mapping for every supported skin. Matma Rex (talk) 12:00, 21 March 2014 (UTC)Reply

Yes! Having the mapping is then just routine to update the frontend to support some other skin. For custom skins skin developer can provide the mapping themselves. But to reverse engineer a skin and map every single class is a lot of work; therefore I intend to do this only for Vector for now since it applies to the vast mojority of wikis and it's the most complex one. If there is time we'll try to implement some of Bawolff's ideas for other skins (see above). Maybe I should drop the word "Vector" from the proposal's title. --Ioannis Protonotarios 16:18, 21 March 2014 (UTC)Reply
So this would have no interaction with Jack's and MatmaRex's projects on skinning? Would they be both independent and non-conflicting? --Nemo 16:33, 21 March 2014 (UTC)Reply
I would say yes. Because this is a totally different approach. Skinning is like building a house. I am talking about interior design. Something that the end user can do. Let anyone master their site design with just simple clicks. --Ioannis Protonotarios 16:48, 21 March 2014 (UTC)Reply
Yeah, I would recommend dropping "Vector" from the title, even if that's the only skin you want to connect with the "theme designer" in the beginning. Some people are, um, not exactly fans of the skin ;) and might get the wrong idea. Matma Rex (talk) 19:16, 26 March 2014 (UTC)Reply

Mentors and microtasks[edit]

We are still looking for mentors and microtasks -- see my reply in wikitch-l. Still, your proposal is interesting, and I recommend you not to give up. While we keep searching, please go ahead, pick some bugs, and fix them, showing off your skills and collaboration style. If you don't know where to start, see Annoying little bugs.--Qgil (talk) 18:43, 26 March 2014 (UTC)Reply

Wikia ThemeDesigner[edit]

This idea is very similar to Wikia's ThemeDesginer extension:

  • Allows the user to set the page background, button colours and other skin element colours
  • Uses Sass to calculate appropriate values of different colours
    • It stores the 4 colours that can be set and calculates everything else from these
    • An example might be a dark page background needing a light font in order to make it readable
  • Adds an interface for uploading a logo to the wiki
  • Has a few default themes to choose from if you want something quick for the time being

You can have a look at the UI here, you just need to make an account if you haven't already. Might be useful for some inspiration.

Given the similarity between vector, monobook, etc. it might be viable to use the same theme colours for each skin. Mdowdell (talk) 20:03, 20 April 2014 (UTC)Reply