User:Wikinaut/MediaWiki Developer's Guide

Become a smart developer

 * Coding conventions
 * PHP
 * JavaScript
 * CSS
 * Database
 * JavaScript performance
 * jQuery
 * Pre-commit checklist
 * How to debug
 * Requests for comment page: discuss your new idea before committing


 * Code review
 * Code review guide
 * Getting your code reviewed


 * Security
 * Security
 * Security for developers
 * Security checklist for developers
 * Security (Manual)
 * Cross-site scripting
 * DOM-based XSS
 * Cross-site request forgery
 * Register globals
 * SQL injection
 * Database access
 * Securing database passwords


 * Extensions, SpecialPages, hooks & Co.
 * Extensions
 * Developing extensions
 * Parser functions
 * Special pages, OutputPage, WebRequest, Database, User, Title.php, FAQ
 * Title.php
 * $wgLegalTitleChars
 * Extending wiki markup
 * Magic words (Manual)
 * Magic words (Help)
 * Hooks
 * Extension hook registry


 * Useful Classes
 * HTMLForm
 * HTMLForm tutorial part 1
 * HTMLForm tutorial part 2
 * HTMLForm tutorial part 3


 * Application programming interface (API)
 * API Introduction
 * API Main page


 * Resource Loader
 * ResourceLoader
 * ResourceLoader/Requirements
 * ResourceLoader/Migration guide for extension developers
 * ResourceLoader/JavaScript Deprecations


 * Testing
 * QA and testing
 * Writing testable PHP code
 * PHP unit testing
 * JavaScript unit testing
 * Parser tests


 * Localisation - Internationalisation (i18n)
 * Translatewiki.net
 * Localisation


 * Newcomers
 * How to become a MediaWiki hacker
 * Developer access
 * Development policy
 * How to contribute