- Since MediaWiki 1.26, gadgets are now required to use ResourceLoader - see ResourceLoader/Migration guide (users) for more details.
- → See ResourceLoader/Features for a complete walk through of ResourceLoader
ResourceLoader solves this problem by loading resources on-demand and only for browsers that can run them. Although there is much more to it, the overall flow for client-side performance can be summarized by these 3 points:
- Minifying and concatenating
→ which reduces the code's size and parsing/download time
- Batch loading
→ which reduces the number of requests made
- Data URI embedding
→ which further reduces the number of requests, response time and bandwidth
Optionally images referenced in stylesheets can be embedded as data URIs. Together with the gzipping of the server response, those embedded images, together, function as a "super sprite".
- Features – Complete overview of ResourceLoader features.
- Developing with ResourceLoader – notes on configuring your development environment and on switching ResourceLoader between development and production modes.
- Migration guide for extension developers – a guide to making extensions to work with ResourceLoader.
- Migration guide (users)
- Core modules – an overview of all core modules, supported with documentation and examples.
- Third party modules – list of known MediaWiki extensions who provide ResourceLoader modules.
- ResourceLoader/Developing with Webpack - optional guide for those wondering how to use webpack in a RL compatible way.
- Vocabulary – the terminology used in ResourceLoader (such as Loader, Module, Requirement, etc.)
These presentations detail the purpose and results of ResourceLoader.
A very complete presentation of why, how and what ResourceLoader does.
These presentations go more in-depth towards developers already familiar with MediaWiki development.
A walk through ResourceLoader's Features and how to develop with it in a MediaWiki extension.