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