On Thu, Apr 23, 2015 at 7:40 PM, Nasir Khan nasir8891@gmail.com wrote:
MediaWiki is forcing me to use the default vector styles
No, it isn't. Where did you get this impression from? When building a skin, you're free to do the entire CSS by yourself; of course, often you'll find it easier to use some of the core styles in addition to your own styles. Do note that "core styles" doesn't mean "Vector styles". MediaWiki core provides certain skinning-related general-purpose ResourceLoader modules, namely mediawiki.skinning.elements, mediawiki.skinning.content, mediawiki.skinning.interface and mediawiki.skinning.content.externallinks, the former three usually being somewhat mutually exclusive. Usually you'll want to make your skin load the mediawiki.skinning.content.externallinks module and one of the other three aforementioned modules.
I found it very complex to develop a new skin for MediaWiki
Yes, it's not a task for the faint of heart. A lot of the on-wiki documentation at MediaWiki.org is outdated, lacking or likely both. You might be interested in taking a look at some of the skins I've contributed to [1]; I'd say that Dusk [2] or [3] Truglass are pretty good examples in terms of structure.
You'll need: * 2 PHP files (setup file + main skin file, i.e. if your skin would be called "EpicAwesomeness", these files would be EpicAwesomeness.php and EpicAwesomeness.skin.php) * a folder (usually called "resources") for assets like images, CSS and JS
In the setup file, you define skin credits, make your skin a valid skin that MediaWiki recognizes and add its classes into the autoloader, as well as define the skin's custom ResourceLoader module, if and when you want to have some custom CSS.
In the main skin file, you define two classes (though some skins seem to have split this into two files, one file per class; if you ask me, having these two classes in the same file is just fine because the other class is usually about 12-20 lines long); a class extending SkinTemplate ("class SkinEpicAwesomeness extends SkinTemplate"), which basically takes care of loading the appropriate ResourceLoader modules that your skin will need, and the class which contains most of the skin's HTML, and extends the BaseTemplate class ("class EpicAwesomenessTemplate extends BaseTemplate").
About a year ago i headed a project on "Separating skins from core MediaWiki", could anyone please let me know the progress and current status of that project.
That project was completed successfully and nowadays skins that were once bundled with MediaWiki core, such as Cologne Blue, Modern, MonoBook and Vector, are located in separate code repositories. The on-wiki project page at [4] might be useful, too.
Please let the mailing list know if you have any further questions. Writing a new skin isn't easy, especially if you aren't a senior MediaWiki developer, so we'll want to streamline the process, improve the documentation and generally speaking encourage new people to write new skins! After all, MediaWiki.org currently lists less than 50 [5] skins, whereas WordPress, phpBB and other similar systems have hundreds of available skins.
[1] https://www.mediawiki.org/wiki/User:Jack_Phoenix/extensions [2] https://www.mediawiki.org/wiki/Skin:Dusk [3] https://www.mediawiki.org/wiki/Skin:Truglass [4] https://www.mediawiki.org/wiki/Separating_skins_from_core_MediaWiki [5] https://www.mediawiki.org/wiki/Category:All_skins
Thanks and regards, -- Jack Phoenix MediaWiki developer