Developer hub/ru

Это общий обзор материалов о разработке MediaWiki, включающий ссылки на основные документы, ресурсы и инструменты для разработчиков MediaWiki. Они ориентированы на квалифицированных разработчиков LAMP, имеющих опыт использования MediaWiki.


 * Если вы хотите использовать веб-API проектов Викимедиа, посетите Web APIs hub (в процессе создания).
 * Если вы хотите внести свой вклад в разработку программного обеспечения Викимедиа, см. New Developers.
 * Вводное руководство по разработке MediaWiki можно почерпнуть на странице Как стать хакером MediaWiki.
 * If you want to collaborate with other third-party MediaWiki users, the (MWStake) is a MediaWiki user group consisting of MediaWiki developers, system administrators, users, consultants, and hosting providers.

Обзор
MediaWiki — это программное обеспечение, на основе которого создана Википедия, её родственные проекты, а также тысячи вики по всему миру.

MediaWiki is written in the PHP programming language. It uses jQuery as the client JavaScript library.

MediaWiki is primarily written for the LAMP platform and runs on most operating systems. MediaWiki primarily uses the MySQL and MariaDB database servers.

MediaWiki разрабатывается в стиле открытого ПО, is largely coordinated online, and supported by the Wikimedia Foundation, though volunteer community developers play a huge part as well.


 * Обсуждения разработки происходят в различных почтовых рассылках и IRC-каналах. Основной список рассылки разработчиков — это wikitech-l. Основной IRC-канал разработчиков — это #mediawiki и #wikimedia-dev.
 * Управление исходным кодом осуществляется посредством системы контроля версий Git.
 * Проверка кода большинства проектов выполняется с помощью . Следуйте это руководству чтобы настроить Git и Gerrit. Так вы сможете отправлять патчи.
 * Bug reports and tasks for most projects are managed on Phabricator.
 * Разработчикам расширений и интерфейса MediaWiki (вместо работы над кодом ядра), предоставляется несколько удобных точек расширения, в том числе API, система обработчиков (Hooks) и внешнего оформления (Skins) — см. обзор в разделе #Расширение MediaWiki на этой странице.

Расширение MediaWiki
MediaWiki была спроектирована так, чтобы позволить вносить изменения без изменения основного кода. Это облегчает обновление при переходе на новую версию MediaWiki, так как исчезает необходимость при обновлении вручную править код существующих модулей расширения, заново приводя их в соответствие с основным кодом. Предусмотрено шесть основных способов, позволяющих разработчикам MediaWiki добавлять новые возможности, а также изменять существующие. Способы расширения следующие:


 * API — доступ к данным и метаданным конкретной инсталляции MediaWiki через его веб-API.
 *  – * Перехваты — каждый раз, когда происходит какое-то событие, выполняется нечто...
 *  – * Функции парсера — создание новой команды наподобие:.
 *  – * Шкурки («скины») — изменение стиля оформления MediaWiki.
 *  – * Служебные страницы — добавление новой служебной страницы.
 *  – * Расширения тэгов — создание нового тэга наподобие:.
 *  – add a parser hook to modify the content of wikitext.