Skip to content

MediaWiki Tutorials — Complete Project-Based Guide

In this tutorial series, you'll learn MediaWiki from zero by building a real project — your own documentation wiki.

MediaWiki is the engine that powers Wikipedia and thousands of other wikis worldwide. Unlike WordPress (built for blogging) or Drupal (built for enterprise content), MediaWiki is designed for collaborative knowledge building — where every reader can be an editor, every change is tracked, and nothing is ever lost.

What You'll Learn

  • Install MediaWiki locally and configure Apache, PHP, and MySQL
  • Create and format wiki pages with wikitext, tables, and media
  • Organize content with namespaces, categories, subpages, and redirects
  • Manage users with granular permissions, groups, and bot automation
  • Extend MediaWiki with Semantic MediaWiki, VisualEditor, Scribunto, and more
  • Maintain, back up, upgrade, and secure your production wiki

How to Use This Series

Each lesson builds on the previous one. Start with Module 1 if you are new to MediaWiki, or jump to any module that matches your skill level.

Module 1: Getting Started

# Lesson What You'll Learn
01 What is MediaWiki Wikipedia account, first edit, wiki concepts
02 Installation XAMPP, download, web installer, LocalSettings.php

Module 2: Content & Editing

# Lesson What You'll Learn
03 Your First Page Main Page, wikitext basics, page structure
04 Linking & Categories Internal links, categories, category trees
05 Templates Infoboxes, template parameters, reuse
06 Namespaces Content vs talk namespaces, custom namespaces
07 Users & Permissions User groups, blocking, rights management
08 Extensions Installing and configuring extensions
09 Maintenance Backup, restore, maintenance scripts
10 FAQ & Troubleshooting Common problems and solutions

Module 3: Advanced Content & Editing

# Lesson What You'll Learn
11 Advanced Wikitext Tables, lists, collapsible sections, magic words
12 Image & Media File uploads, galleries, thumbnails, media settings
13 Transclusion Templates with parameters, includeonly, noinclude
14 Parser Functions if, switch, expr, time, custom parser functions

Module 4: Organization & Workflow

# Lesson What You'll Learn
15 Subpages Parent-child pages, breadcrumbs, automatic navigation
16 Redirects Page moves, redirects, double redirects, soft redirects
17 Wiki Categories Tree categories, category sorting, hidden cats
18 Special Pages AllPages, RecentChanges, custom special pages
19 Watchlist & Recent Changes Monitoring, patrol, email notifications

Module 5: Users & Groups

# Lesson What You'll Learn
20 User Groups Sysop, bureaucrat, bot, custom groups, permissions
21 User Rights Fine-grained permissions, blocking, rights management
22 Email & Notifications Email confirmation, Echo, digest notifications
23 Bots & Automation Pywikibot, AutoWikiBrowser, bot passwords
24 User Preferences & Skins Custom CSS, Vector skin, preference settings

Module 6: Extensions

# Lesson What You'll Learn
25 Extension Management Extension registry, versioning, installation
26 Semantic MediaWiki Structured data, properties, inline queries
27 VisualEditor Parsoid, VE configuration, WYSIWYG editing
28 Scribunto & Lua Lua modules, scribunto scripting, advanced templates
29 Cite & References Footnotes, citation templates, CiteThisPage

Module 7: Advanced Wiki Features

# Lesson What You'll Learn
30 Interwiki Links Interwiki prefixes, database config, Wikimedia
31 Wiki Farms Multiple wikis, shared code, farm extensions
32 Content Translation Translate extension, page translation workflow
33 Import & Export XML export/import, page Migration, interwiki import
34 REST API Action API, query modules, token authentication

Module 8: Maintenance & Administration

# Lesson What You'll Learn
35 Database Maintenance Maintenance scripts, update.php, rebuild indexes
36 Logging & Monitoring Log types, log search, Special:Log
37 Backup & Restore XML dumps, database backups, file backups
38 Performance Tuning Caching, JobQueue, profiling, FileCache
39 Upgrading MediaWiki Version compatibility, upgrade procedure, testing
40 Security Hardening, CSP, XSS, CAPTCHA, .htaccess

What You'll Build

By the end of this series, you will build a complete documentation wiki:

  • A fully configured wiki with custom namespaces and organized content structure
  • User authentication with granular permissions for editors and administrators
  • Custom templates using Scribunto Lua modules for dynamic content
  • Semantic MediaWiki integration for structured data queries
  • Automated backup and upgrade procedures
  • Production server with caching, security, and monitoring

Let's begin with Lesson 1.

Published Topics

25 Extension Installation

✓ Live

What is MediaWiki? — Try Wikipedia Before You Build One

Learn what a wiki is by exploring Wikipedia, creating an account, and making your first edit. Understand why MediaWiki powers the world's largest encyclopedia before building your own.

✓ Live

Installing MediaWiki — Set Up Your First Wiki on Localhost

Download MediaWiki, install it with XAMPP on your computer, run the web installer, and see your own wiki for the first time. Complete step-by-step with troubleshooting.

✓ Live

Creating Your First MediaWiki Page — Wiki Markup for Beginners

Edit your wiki's Main Page, learn wikitext formatting (bold, italic, headings, lists), and create content that stays. Step-by-step with expected output for every edit.

✓ Live

Linking Pages & Using Categories — Building Your Wiki Structure

Create new pages, link them together with internal links, and organize everything with categories. Turn your single-page wiki into a connected knowledge base.

✓ Live

MediaWiki Templates — Reusable Content Blocks for a Consistent Wiki

Create your first template, add parameters, and build an infobox. Learn how templates keep your wiki pages consistent and save hours of manual formatting.

✓ Live

MediaWiki Namespaces — Talk Pages, User Pages, Help Pages Explained

Learn what namespaces are, how to use Talk pages for discussion, create User pages for profiles, and organize Help documentation. Everything with practical examples.

✓ Live

MediaWiki User Permissions & Security — Managing Access and Preventing Spam

Set up user accounts, configure permission groups, enable CAPTCHA and email verification, and secure your wiki against spam and unauthorized access.

✓ Live

MediaWiki Extensions — Adding VisualEditor, Scribunto, and More

Install and configure essential MediaWiki extensions: VisualEditor for WYSIWYG editing, Scribunto for Lua templates, ConfirmEdit for CAPTCHA, and more.

✓ Live

MediaWiki Backups & Maintenance — Keeping Your Wiki Safe

Back up your MediaWiki database and files, export pages as XML, upgrade to new versions safely, and set up caching for better performance.

✓ Live

MediaWiki Troubleshooting & FAQ — 50+ Common Problems Solved

Complete reference of common MediaWiki errors, problems, and solutions. Covers installation, editing, permissions, performance, and more.

✓ Live

MediaWiki Advanced Wikitext — Tables, Lists, Collapsible Sections, and Magic Words

Master advanced wikitext: sortable tables, nested lists, collapsible sections, magic words, and conditional content. Make your wiki pages dynamic and well-formatted.

✓ Live

MediaWiki Image & Media — File Uploads, Galleries, Thumbnails, and Media Settings

Upload images, create galleries and thumbnails, configure file types and sizes, and manage media files on your MediaWiki wiki with complete control over display settings.

✓ Live

MediaWiki Transclusion — Templates, Parameters, Includeonly, and Noinclude

Master transclusion in MediaWiki: reuse content across pages with template parameters, includeonly/noinclude tags, selective transclusion, and template documentation.

✓ Live

MediaWiki Parser Functions — #if, #switch, #expr, #time, and Conditional Templates

Use MediaWiki parser functions for conditional logic: #if, #switch, #expr for calculations, #time for date formatting, and #ifexist for page existence checks.

✓ Live

MediaWiki Subpages — Parent-Child Pages, Breadcrumbs, and Automatic Navigation

Create subpages in MediaWiki for hierarchical content organization, automatic breadcrumb navigation, and parent-child page relationships with subpage links and templates.

✓ Live

MediaWiki Redirects — Page Moves, Redirects, Double Redirects, and Soft Redirects

Move pages and create redirects in MediaWiki: hard redirects, double redirect detection, soft redirects for external links, and automatic redirect creation on page moves.

✓ Live

MediaWiki Categories — Tree Categories, Category Sorting, and Hidden Categories

Organize wiki pages with categories: create category trees, control page sorting, use hidden categories for internal management, and build a complete category navigation system.

✓ Live

MediaWiki Special Pages — Special:AllPages, Special:RecentChanges, and Custom Special Pages

Navigate MediaWiki special pages: Special:AllPages, Special:RecentChanges, Special:Statistics, Special:Log, and learn how to create custom special pages via extensions.

✓ Live

MediaWiki Watchlist & Recent Changes — Monitoring, Patrol, and Email Notifications

Monitor wiki activity with watchlists and recent changes: add pages to your watchlist, patrol edits, configure email notifications, and manage notification preferences.

✓ Live

MediaWiki User Groups — Sysop, Bureaucrat, Bot, Custom Groups, and Permissions

Create and manage user groups in MediaWiki: sysop, bureaucrat, bot, custom groups, group permissions, and best practices for assigning roles to wiki users.

✓ Live

MediaWiki User Rights — Fine-Grained Permissions, Blocking, and User Rights Management

Manage user rights in MediaWiki: fine-grained permissions, blocking users, IP range blocks, partial blocks, and the Special:UserRights interface for user management.

✓ Live

MediaWiki Email & Notifications — Email Confirmation, Echo Notifications, and Digest Settings

Configure email and notification systems in MediaWiki: email confirmation, Echo extension notifications, web notifications, email digests, and preference configurations.

✓ Live

MediaWiki Bots & Automation — Pywikibot, AutoWikiBrowser, and Bot Passwords

Automate wiki tasks with bots in MediaWiki: Pywikibot framework, AutoWikiBrowser for Windows, bot passwords for API access, and automated maintenance scripts.

✓ Live

MediaWiki User Preferences & Skins — Custom CSS, Preference Settings, and Skin Selection

Customize the MediaWiki user experience: preference settings, skin selection (Vector, Modern, MonoBook), custom CSS and JS, and per-user configuration options.

✓ Live

Semantic MediaWiki — Structured Data, Properties, and Inline Queries

Add structured data to MediaWiki with Semantic MediaWiki: define properties, annotate pages with typed data, run inline queries, and build dynamic content pages.

✓ Live

MediaWiki VisualEditor & WYSIWYG — Parsoid, VE Configuration, and Editor Integration

Install and configure VisualEditor for MediaWiki: Parsoid setup, VE toolbar customization, integration with existing extensions, and troubleshooting common VE issues.

✓ Live

MediaWiki Scribunto & Lua — Lua Modules, Scribunto Scripting, and Dynamic Templates

Write Lua modules for MediaWiki with Scribunto: create reusable Lua scripts, access wiki data, build dynamic templates, and handle complex logic beyond wikitext.

✓ Live

MediaWiki Cite & References — Footnotes, Citation Templates, and CiteThisPage

Add citations and references to MediaWiki: footnotes with the Cite extension, reusable citations, citation templates, and the CiteThisPage extension for citation export.

✓ Live

MediaWiki Interwiki Links — Interwiki Prefixes, Database Config, and Wikimedia Projects

Create cross-wiki shortcuts with interwiki links in MediaWiki: configure interwiki prefixes in the database, link to Wikimedia projects, manage custom prefixes for external wikis.

✓ Live

MediaWiki Wiki Farms — Multiple Wikis, Shared Code, and Farm Extensions

Set up a MediaWiki farm: run multiple wikis from one codebase, share extensions and skins, configure separate databases, and use farm management extensions.

✓ Live

MediaWiki Content Translation — Translate Extension, Page Translation Workflow, and Language Management

Translate wiki content with the Translate extension: mark pages for translation, manage translation units, track completion, and build a multilingual documentation system.

✓ Live

MediaWiki Import & Export — XML Export, Page Migration, and Interwiki Import

Migrate pages between MediaWiki wikis: XML export and import, interwiki import from remote wikis, handling revisions, images, templates, and user accounts during migration.

✓ Live

MediaWiki REST API — Action API, Query Modules, Authentication, and API Usage

Access MediaWiki programmatically: Action API, REST API, query modules for reading and writing data, token-based authentication, and building API-powered applications.

✓ Live

MediaWiki Database Maintenance — Maintenance Scripts, update.php, and Rebuilding Indexes

Maintain the MediaWiki database: run maintenance scripts, update.php for schema upgrades, rebuild indexes, repair tables, and keep your wiki database healthy.

✓ Live

MediaWiki Logging & Monitoring — Log Types, Log Search, and Special:Log

Monitor MediaWiki activity through logging: Special:Log for viewing all logs, log types (delete, block, protect, upload), log search, custom log entries, and log analysis.

✓ Live

MediaWiki Backup & Restore — XML Dumps, Database Backups, and File Backups

Back up and restore MediaWiki: XML dumps of pages, full database backups, file backups, automated backup scripts, and complete disaster recovery procedures.

✓ Live

MediaWiki Performance Tuning — Caching (FileCache, Redis), JobQueue, and Profiling

Optimize MediaWiki performance: configure FileCache and Redis caching, manage the JobQueue, enable profiling, use CDN and object caching, and reduce page load times.

✓ Live

MediaWiki Upgrading — Version Compatibility, Upgrade Procedure, Testing, and Rollback

Upgrade MediaWiki safely: check version compatibility, follow the upgrade procedure, test before deploying, handle extensions, and prepare rollback strategies.

✓ Live

MediaWiki Security — Hardening, .htaccess, CSP, XSS Prevention, and CAPTCHA

Harden MediaWiki against attacks: .htaccess protection, Content Security Policy, XSS prevention, CSRF tokens, CAPTCHA configuration, and security best practices.

✓ Live

All 40 topics in MediaWiki Tutorials — Complete Project-Based Guide are published.