User:Tim Starling/Proposed modularisation of client-side resources

We can organise client side resources as follows. Proposed inclusion dependency hints are in square brackets.


 * Base core (OutputPage or new class)
 * Header static scripts
 * ajax.js [all]
 * wikibits.js [all]
 * jQuery [all]
 * Footer static scripts
 * ajaxwatch.js [user]
 * mwsuggest.js [user]
 * rightclickedit.js [user]
 * ajaxCategories [page]
 * mv_embed [all]
 * Header dynamic scripts
 * gen=js misc: skin=x, stylepath=x [skin]
 * User:name/skinname.js [user]
 * MediaWiki:Common.js [all]
 * MediaWiki:Skinname.js [skin]
 * Static CSS
 * common/shared.css [all]
 * Dynamic CSS
 * media=""
 * MediaWiki:Common.css [all]
 * MediaWiki:Skinname.css [skin]
 * Assorted preference dependent [user]
 * media=handheld
 * MediaWiki:Handheld.css [all]
 * media=print
 * MediaWiki:Print.css [all]


 * SkinTemplate
 * Static CSS
 * common/commonPrint.css
 * Conditional head JS
 * common/IEFixes.js


 * SkinOld proposed base
 * Static CSS
 * common/oldshared.css
 * common/common_rtl.css
 * common/wikiprintable.css


 * SkinStandard
 * Static CSS
 * common/wikistandard.css
 * common/quickbar.css
 * common/quickbar-right.css
 * Static JS
 * common/sticky.js


 * SkinNostalgia
 * Static CSS
 * common/nostalgia.css


 * SkinCologneBlue
 * Static CSS
 * common/cologneblue.css


 * SkinMonoBook
 * Static CSS
 * monobook/main.css
 * $wgHandheldStyle (chick/main.css)
 * monobook/IE50Fixes.css
 * monobook/IE55Fixes.css
 * monobook/IE60Fixes.css
 * monobook/IE70Fixes.css
 * monobook/rtl.css


 * SkinChick
 * Static CSS
 * chick/main.css
 * chick/IE50Fixes.css
 * chick/IE55Fixes.css
 * chick/IE60Fixes.css


 * SkinModern
 * Static CSS
 * common/shared.css
 * modern/main.css
 * modern/print.css
 * modern/rtl.css


 * SkinSimple
 * Static CSS
 * simple/main.css
 * simple/rtl.css


 * SkinVector
 * Static CSS
 * vector/main-rtl.css
 * vector/main-ltr.css
 * HTML component JS
 * csshover.htc