New Developers/Introduction to the Wikimedia Technical Ecosystem/cs

Tato stránka poskytuje přehled softwaru a infrastruktury Wikimedie pro nové technické přispěvatele. Jeho cílem je pomoci vývojářům porozumět hlavním oblastem, kde můžete uplatnit své technické dovednosti, abyste pomohli podpořit a rozvíjet Hnutí.



Open source
Technický ekosystém Wikimedie se řídí principy bezplatného open source software (FLOSS). Přispěvatelé z celého světa dobrovolně věnují svůj čas údržbě a rozšiřování technologie za projekty Wikimedie. To znamená, že technický ekosystém Wikimedie se skládá z mnoha jedinečných projektů s různými přispívajícími pokyny, návrhovými vzory, umístěním hostitelů a procesy kontroly kódu.

Hodnoty open source, jako je sdílené vlastnictví a silné závazky týkající se ochrany osobních údajů, jsou ústředním bodem technické infrastruktury, softwaru a služeb Wikimedie. Například:


 * Pro kontrolu verzí a kontrolu kódu používá Wikimedia Foundation (WMF) Git a Gerrit. Git je bezplatný a open source distribuovaný systém správy verzí a Gerrit je bezplatný webový nástroj pro kolaborativní kontrolu kódu, který se integruje s Git.
 * Wikimedia Cloud Services (WMCS) poskytuje infrastrukturu cloud computingu, sdílený hosting (platforma jako služba) a datové služby pro přispěvatele do softwarových projektů Wikimedie. Tyto služby můžete použít k hostování svých softwarových nástrojů pro hnutí Wikimedi, a to zdarma, namísto používání proprietárních, placených nebo neopen source služeb.

Kromě poskytování nástrojů a služeb pro technické přispěvatele WMF spravuje základní infrastrukturu, jako jsou datová centra, vyhledávání, sítě a globální směrování provozu. Nemusíte se o nich učit, abyste mohli přispívat do wiki projektů, ale měli byste vědět o základním softwaru, který pohání Wikipedii a další wikiny: MediaWiki.

MediaWiki
Projekty Wikimedie, včetně Wikipedie, běží na softwarové platformě MediaWiki. MediaWiki je bezplatný a otevřený software vytvořený speciálně pro shromažďování a organizování svobodných a otevřených znalostí. Je vícejazyčný, rozšiřitelný, přizpůsobitelný a spolehlivý. MediaWiki umožňuje uživatelům na celém světě upravovat, organizovat, udržovat a spolupracovat na wikinách. Spravuje zobrazení obsahu, jako je text, fotografie, formátování a revize. MediaWiki je více než jen systém pro správu obsahu: Poskytuje také nástroje pro řešení spamu a vandalismu a další funkce, které podporují komunitní správu volně znovu použitelných znalostí na otevřené platformě.



Klíčové oblasti, kam mohou vývojáři přispívat


Vyvoj MediaWiki, aplikací a rozšíření


Jádro MediaWiki a rozšíření
Software MediaWiki je vyvíjen ve spolupráci lidí z celého světa. Technická komunita Wikimedia přidala do MediaWiki mnoho klíčových funkcí a vybudovala rozsáhlý ekosystém rozšíření základního softwaru. Vzhledem ke své složitosti může být přispívání do MediaWiki náročnější než jiné typy technických příspěvků. Jako nový přispěvatel se zaměřte na funkce a chyby, které se dotýkají pouze malé oblasti kódu. Vyhněte se vytváření nových vzhledů a rozšíření MediaWiki: Každé nové rozšíření zvyšuje celkovou zátěž softwaru na údržbu a může blokovat spouštění nových důležitých funkcí. Místo toho se podílejte na práci na jednom z mnoha existujících rozšíření.

Chcete-li se dozvědět více, navštivte.



Mobilní aplikace Wikimedie
Mobilní aplikace rozšiřují dosah obsahu Wikimedie tím, že umožňují uživatelům komunikovat s Wikimedií bez použití prohlížeče. Existují aplikace pro platformy Android, iOS a KaiOS, aplikace pro různé projekty Wikimedie, jako je Commons, Wikipedie a Wikislovník a aplikace pro aktivity, jako je čtení, přispívání a další. Mnoho aplikací má živé vývojářské komunity a vítá nové přispěvatele.

Chcete-li se dozvědět více, navštivte.



Přizpůsobení MediaWiki prostřednictvím vývoje na wiki


Šablony a moduly
Šablony umožňují zobrazení jednoho obsahu na více wiki stránkách ("transkluze"). Mnoho wikin se silně spoléhá na šablony: Jsou jich tisíce, používají se téměř na každé stránce a jsou nedílnou součástí funkcí wiki. Šablonám můžete předat parametry a přizpůsobit je tak, jak je s obsahem v různých kontextech nakládáno.

K úpravě nebo vytvoření šablony nepotřebujete účet vývojáře a jsou napsány ve wikitextu. Díky tomu jsou šablony snadným způsobem, jak začít s přizpůsobením chování wiki.

Moduly jsou podobné šablonám, ale místo toho, aby byly napsány ve wikitextu, používají programovací jazyk Lua. Zatímco šablony jsou součástí základní aplikace MediaWiki, podpora modulů je implementována rozšířením nazvaným.

Chcete-li se dozvědět více o šablonách, navštivte. Chcete-li se dozvědět více o modulech ao tom, jak se Lua používá na MediaWiki, navštivte příručku Scribunto Lua.



Uživatelské skripty a miniaplikace
MediaWiki podporuje přizpůsobení front-endu nebo vývoj "on-wiki", aby se zlepšila základní funkčnost softwaru. Uživatelské skripty jsou Javascript a/nebo CSS, které poskytují další funkce nad MediaWiki. Kód žije na wiki a je vkládán ze strany klienta na MediaWiki prostřednictvím uživatelských preferencí. Můžete upravit svůj místní JavaScript a CSS, abyste změnili vzhled a chování svého vlastního rozhraní. Jednotliví uživatelé mohou přidávat funkce pro sebe, pokud dodržují očekávání a pokyny týkající se toho. Pokud vytvoříte něco, co mohou používat ostatní, můžete své skripty neformálně sdílet nebo ve spolupráci s komunitou wiki prozkoumat zpřístupnění vašich přizpůsobení ostatním uživatelům a projektům jako "gadget".

Gadgets are user-generated customizations that are available for installation on a wiki, via the Gadgets MediaWiki extension. Many gadgets originated as user scripts that became widely-used on their home wiki, and admins wanted to make them easier for everyone to find and use. Admins can configure which gadgets are available and enabled by default for an entire MediaWiki site or skin.

To learn more about user scripts and gadgets, visit .

Build tools and bots to help Wikimedia projects
MediaWiki APIs provide direct access to the data contained in the MediaWiki database. This includes wiki content, metadata, analytics data, and more. You can use these APIs to build apps that contribute content or new functionality to the Wikimedia ecosystem. The API modules provide programmatic access to much of the same functionality provided by the MediaWiki web interface.

Bots
Bots are automated programs that help wiki projects by doing crucial but repetitive tasks. Bots save human effort by correcting missing or extra spaces, suggesting articles to newcomers, fixing broken links, and more. Bot automation supports Wikimedia volunteers by allowing them to spend more of their time on tasks that require human intelligence, like writing articles, finding sources, fact checking, and synthesizing multiple points of view.

Bots can request pages and submit edits to wikis just like how human users do the same tasks in a web browser. Because bots access pages the same way people do, they can get caught in edit conflicts, have page timeouts, or run across other unexpected complications while requesting pages or making edits. Since bots generally complete high-volume work, you should consider these situations when writing a bot.

To learn more about bots, visit.

Tools
Tools are software applications that help people working on Wikimedia projects. Tools can do all kinds of tasks, like help editors discover content to improve, simplify edit-a-thon planning, visualize wiki content, help fight vandalism, and much more.

The MediaWiki Action API gives you programmatic access to content on any Wikimedia wiki. You can use the Action API to search and display wiki pages, get media files, edit pages, and manage wikis. Client libraries implementing the MediaWiki API are available in many languages, including Python and JavaScript.

To explore more Wikimedia tools, visit Toolhub.

Join the Wikimedia tech community
A great way to find ways to contribute is to get connected to the technical community. You can meet people and discuss development work on various communication channels and at events like Hackathons. The Wikimedia Foundation also offers outreach programs to mentor new developers.

Get started as a new contributor

 * Visit the New Developers page to learn more about getting started with development and contributing to Wikimedia open source.
 * Use the Developer Portal to find curated resources and tutorials for your area of interest.