Manual:How to make a MediaWiki skin/Migrating SkinTemplate based skins to SkinMustache

As part of the 1.36 release in 2020, the SkinMustache class was added to MediaWiki core. This development makes it possible to use Mustache templates to make skins. It should appeal to skin developers who do not wish to use PHP, or would like to reduce their dependency on PHP. This tutorial aims to demonstrate the steps you may need to convert a PHP based SkinTemplate skin to SkinMustache.

Step 1: Use Skin Registration
Previously, a skin would need to declare a Skin PHP class that extends the SkinTemplate. It would need to define several properties that were used to define the skins internal key and the associated PHP template.

Since 1.36, this information can be defined at time of skin registration. Historically, skins have required the creation of 2 PHP classes. With the new registration process, you need at most 1 PHP class.

When declaring a skin, it's possible you can set the class value to "SkinTemplate" to use the default core interface: If your Skin contains hooks, we recommend pulling those out into a separate file.

Here is an example for Monobook: https://gerrit.wikimedia.org/r/c/mediawiki/skins/MonoBook/+/701142

Step 2: Unlock the power of templating
TODO

Step 3: Embrace data.
TODO

Step 4: Fill out the missing data
TODO