Developer hub/ru

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


 * Если вы хотите использовать веб-API проектов Викимедиа, посетите (в процессе создания).
 * Если вы хотите внести свой вклад в разработку программного обеспечения Викимедиа, смотрите.
 * Вводное руководство по разработке MediaWiki можно почерпнуть на странице.
 * Если вы хотите сотрудничать со сторонние пользователями MediaWiki, (MWStake) — это MediaWiki группа пользователей, состоящая из разработчиков MediaWiki, системных администраторов, пользователей, консультантов и провайдеров хостинга.

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

MediaWiki написана на языке PHP. Использует jQuery в качестве клиента к библиотеке JavaScript.

MediaWiki изначально написана для платформы LAMP и работает в большинстве операционных систем. MediaWiki изначально использует сервера баз данных MySQL и MariaDB.

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

Основной список рассылки разработчиков — это wikitech-l. Основной IRC-канал разработчиков — это $irc1 и $irc2.
 * Обсуждения разработки происходят в различных почтовых рассылках и IRC-каналах.
 * Управление исходным кодом осуществляется посредством системы контроля версий Git.
 * Проверка кода большинства проектов выполняется с помощью $gerrit. Следуйте это руководству чтобы настроить Git и Gerrit. Так вы сможете отправлять патчи.
 * Bug reports (сообщения об ошибках) и задачи управляются с помощью |Phabricator.
 * Разработчикам расширений и интерфейса MediaWiki (вместо работы над кодом ядра), предоставляется несколько удобных точек расширения, в том числе API, система обработчиков (Hooks) и внешнего оформления (Skins) — см. обзор в разделе #Расширение MediaWiki на этой странице.

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


 * API — доступ к данным и метаданным конкретной инсталляции MediaWiki через его веб-API.
 *  – каждый раз, когда происходит какое-то событие, выполняется нечто...
 *  – создание новой команды наподобие:.
 *  – изменение стиля оформления MediaWiki.
 *  – добавление новой служебной страницы.
 *  – создание нового тэга наподобие:.
 *  – добавьте hook, чтобы изменить содержание викитекста.