MediaWiki extensions

Overview
MediaWiki has built-in hooks to allow its internal functions to be modified or replaced by user-written functions without modifying any of the distributed files.

Reference

 * Lists of extensions:
 * full list with brief descriptions
 * extensions
 * by category:
 * Category:Extensions: listing by category, with links to other information
 * Category:MediaWiki extensions: extensions which have not yet been ported to mediawiki.org
 * How to:
 * Manual:Special pages: writing Special pages
 * Manual:Tag extensions: adding your own pseudo-HTML tags
 * Manual:Parser functions: adding your own function

Extensions Documented Locally

 * SpamFerret: wikispam filter
 * Contributors: lists main contributors to a page
 * Organic Design Simple Forms: not all that simple, and very powerful

Extensions of Interest
Available MediaWiki extensions which look like they could be useful:
 * administration:
 * Special:Interwiki by Stephanie Amanda Stevens (phroziac)
 * data display:
 * see also GUI widgets
 * spreadsheet tools:
 * Extension:SimpleTable (formerly "TabbedData"): lets you copy/paste tab-delimited spreadsheet data directly onto a MW page
 * syntax highlighting
 * Syntax Highlighting Extension: requires Beautifier Syntax Highlighting Engine
 * GeSHiCodeTag Extension
 * TabbedData extension: useful for directly posting spreadsheets, though formatting may not be as nice as the converter; evaluation needed
 * Extension:Parser function extensions: index to extensions providing parser functions
 * Help:ParserFunctions: basic expressions and conditionals
 * data management:
 * Attribute Extension: adds an "attribute" tab to all pages; stores attribute data in a table
 * Extension:Data by Nikola Smolenski: similar to Semantic MediaWiki
 * DynamicPageList: reporting tool; lists pages by category, with user-definable formatting (now in use on Issuepedia)
 * DPLforum: fork of DynamicPageList 1.12 for displaying "forum-like layouts"
 * Labeled Section Transclusion (LST): sort of an extension of the "noinclude" and "includeonly" tags: allows multiple named sections which can be included or excluded. Pages can be set up which are just "data" to be presented in different formats by inclusion (works well with templates, generally speaking). Now in use on Issuepedia and PsyCrit.
 * SimpleTable: display CSV or tab-delimited spreadsheet data as a table
 * StackFunctions: mini programming language equivalent to PostScript without graphics
 * Extension:VariablesExtension is a different approach to storing data for re-use within the wiki. Due to the fact that the data has to fit inside a template call, available wiki-markup is more limited than with LST (above) but may have other strengths to compensate. Question: Can an included page "see" variables declared in the calling page? Answer: yes.
 * scripting mini-languages:
 * Extension:Winter (Wiki Interpreter) is an extension which adds an interpreted language to MediaWiki pages.
 * Forms:
 * Extension:FormMailer
 * Extension:FormHandler send form by Email
 * experimental (keep an eye on these to see if they become useful):
 * Extension:WikiDB creates virtual tables within the wiki and lets you output their contents dynamically
 * Extension:Semantic MediaWiki
 * groups / security
 * HTML
 * RawMsg: lets you insert bits of raw HTML into a page. The HTML bits are defined in the MediaWiki: namespace (sysops only). There doesn't seem to be any provision for variable usage, so you might have to define one message to start something and another to end it, or even more complicated constructions.
 * GUI widgets:
 * see also HTML
 * ShowHide: lets you define bits of content as hideable (like the table of contents)
 * TreeAndMenu: allows content to be displayed as a dynamic treeview or a pop-up men
 * Extension:Tree view: allows data to be displayed as a dynamic treeview
 * media/file presentation:
 * Extension:Mp3: embeds lightweight MP3 player
 * Extension:OggHandler: embeds display of OGG audio and video files
 * Extension:PdfHandler: shows uploaded PDF files in a multipage preview layout
 * portal-type features:
 * My blog: blogging features
 * Extension:MediaWiki Bulletin Board by Wikimedia Foundation
 * Tasks extension: rudimentary multi-user project management
 * WikiFeeds adds to the standard feeds: Newest pages, Recent changes by user, Newest pages by user, User watchlist, Recent changes for articles in a category, Newest articles in a category
 * real-time messaging/chat:
 * Extension:(Wiki)Chat: not sure what protocol the chat tool uses; sounds non-IRCish
 * Extension:Chat (Lace)
 * forum/BBS (is there a comparison between these, anywhere?) (see Category:Discussion and forum extensions):
 * AWC's Forum: seems reasonably well-designed. Spelling and punctuation are atrocious, but these can be modified through the admin features. Also puts in a fairly unobtrusive link (at the bottom of the forum pages) for the author-company, Another Web Company. Does not seem to have any way to obtain notification when there is activity (no RSS feed, no email notification).
 * DiscussionThread Article
 * DiscussionThreading
 * LiquidThreads: looks like it adds threaded discussion capabilities to talk pages, in a very wiki-oriented (i.e. good) kind of way -- but installation isn't quite turnkey yet
 * MediaWiki Bulletin Board
 * comments don't show up in RSS feed, and forums can't be "watched" for changes
 * interwiki links can't use default shorthand, e.g. site:pagename ; must include display text
 * forum topics and posts can be linked to directly, but can't be transcluded
 * although the posts are formatted to accommodate avatars, avatars don't seem to be supported (yet?)
 * page commenting ("leave a comment on this page"):
 * comments appear on talkpages, but can be transcluded to appear on same page
 * ArticleComments: form is inserted with tag
 * Postcomment: form goes in the skin, so automatically appears on all pages
 * Extension:DschosCalendar wall-calendar-style calendar tool
 * reference site tools: tools especially useful on a site used for reference purposes
 * Extension:LinkSearch
 * RSS:
 * inward feeds - automatic posting of updates from an external RSS feed
 * outward feeds - generating feeds from your site:
 * News Channel: lets you create a new RSS feed, but only one per site; configuration is defined in LocalSettings.php
 * RSS feed for recent changes: seems to be essentially the same as MediaWiki's Special:RecentChanges RSS feed
 * RssExport: seems to allow RSS feed with just some pasting of code into a page. Requires small skin modification, though (how do the other extensions avoid that?)