ResourceLoader
Jump to navigation
Jump to search
ResourceLoader is the delivery system in MediaWiki for JavaScript, CSS, interface icons, and localisation text. It was first deployed to Wikipedia in 2011 and released later that year as part of MediaWiki 1.17.
It is responsible for MediaWiki's low-cost high-performant front end, built on three principles that enable quick deployment of new code seen by Web clients on all pages in less than 5 minutes.
About ResourceLoader[edit]
ResourceLoader was created in 2010 by Roan Kattouw, Trevor Parscal, and Timo Tijhof.
ResourceLoader loads script and style resources on-demand and only for browsers that are capable of running them. Some highlighted features:
- Minifying and concatenating
→ This reduces the size of the code, saving bandwidth cost and download time.
Both JavaScript files, CSS files and interface messages are loaded in a single request. - Batch loading and local cache defragmentation
→ This reduces the number of requests made.
The server can provide multiple module bundles in response to a single request from the browser. These are unpacked in the browser and can be re-used from the cache on subsequent page views even if they need a different set of modules - Bundle static files with generated data and virtual files
→ This allow granular configuration without overhead of additional API requests. A module can contain static files but also generated data from PHP, and virtual files that represent source code from an external source (e.g. a wiki page).
Code stewardship[edit]
- Maintained by Performance Team .
- Live chat (IRC): #wikimedia-perf connect
- Issue tracker: Phabricator (Report an issue)
Categories:
- ResourceLoader
- Frontend
- JavaScript
- WMF Projects
- WMF Projects 2010q3
- WMF Projects 2010q4
- WMF Projects 2011q1
- WMF Projects 2011q2
- WMF Projects 2011q3
- WMF Projects 2011q4
- WMF Projects 2012q1
- WMF Projects 2012q2
- WMF Projects 2012q3
- WMF Projects 2012q4
- WMF Projects 2013q1
- WMF Projects 2013q2
- WMF Projects 2013q3
- WMF Projects 2013q4
- WMF Projects 2014q1
- WMF Projects 2014q2
- WMF Projects 2014q3
- WMF Projects 2014q4
- WMF Projects 2015q1
- WMF Projects 2015q2
- WMF Projects 2015q3
- WMF Projects 2015q4
- WMF Projects 2016q1
- WMF Projects 2016q2
- WMF Projects 2016q3
- WMF Projects 2016q4
- WMF Projects 2017q1
- WMF Projects 2017q2
- WMF Projects 2017q3
- WMF Projects 2017q4
- WMF Projects 2018q1
- WMF Projects 2018q2
- WMF Projects 2018q3
- WMF Projects 2018q4
- WMF Projects 2019q1
- WMF Projects 2019q2
- WMF Projects 2019q3
- WMF Projects 2019q4
- WMF Projects 2020q1
- WMF Projects 2020q2
- WMF Projects 2020q3
- WMF Projects 2020q4
- WMF Projects 2021q1
- WMF Projects 2021q2