While fighting global vandalism may seem hard, especially because Miraheze hosts 5382 wikis, it actually isn't! Miraheze employs AbuseFilter which stops most vandalism before it can even occur. This, along with other suspicious activity, is reported on the #miraheze-cvt-feedconnect IRC channel. You can monitor this feed for any possible vandalism or spam and report it on #miraheze-cvtconnect. Note that both channels are relayed on Discord. A Steward or Global Sysop will review your report and action it accordingly. If an edit isn't stopped by AbuseFilter, you can also manually go into the wiki and revert it yourself. If you do, just make sure to include in the summary that you were reverting vandalism or else you may be erroneously labelled a vandal yourself!
Even if a vandalism-only account is stopped by AbuseFilter, you should still report it to the Stewards to prevent the account from trying to bypass the filter, succeeding and flooding a wiki. To report them, you can make a new section on the Stewards' noticeboard or you can report them on #miraheze-cvtconnect.
Note: Not all wikis are enrolled in the global anti-vandalism program, some have purposefully opted-out of Global Sysop intervention. Also note that private wikis are not reported on the CVT feed. For more info on this, see Counter Vandalism Team.
Phabricator is Miraheze's task tracking system. While most tasks on there require a system administrator, some don't. A user might need help enabling an extension or might have not been able to find a setting in ManageWiki. In these cases, if you know the answer, you're more than welcome to reply to the task. In some cases, if you are certain that the issue has been resolved, you can close the task. If you're new to Phabricator, it is recommended that you wait and learn what types of tasks are closed when, to prevent you from accidentally closing a task that hasn't actually been resolved.
Even if a task involves something technical like importing a database dump, you can still help on the task by sorting the tags correctly for the task. For more information on tags, see Phabricator.
While the previous ways to contribute were some that don't require technical expertise, the following do. If you know how to help out technically, you're more than welcome to!
Help on GitHub
Miraheze hosts all of its configurations in a GitHub config repo (see this page for additional info). Whenever a change needs to be done, these configuration files are updated. When these configurations are updated in any of the repositories hosted on GitHub, the changes are automatically deployed to the servers hosting Miraheze. Historically, feature changes were done by sending a request on the Request features page or by adding a GitHub merge request. This is no longer the case, you can do most configuration changes on ManageWiki. That doesn't mean you can't help out on GitHub, though, it's not rocket science!
Anyone with a GitHub account (available for free) can propose file changes.
Guidelines & Tips
Most of this section (except for a little at the end) is easy to understand. It uses nested arrays to apply settings to all wikis by default, or some wikis as coded.
The basic nesting layout is as follows:
Define namespace variables (close to the start, after includes)
wgConf (largest array)
Setting name (in the form of 'wgVariable' or 'wmgVariable')
Wiki's affected (in the form of 'dbname' or 'default' where dbname is the site's subdomain with "wiki" added to the end)
Setting value (the values to set. It can be a number, true/false, or an array, depending on the setting.)
Some extensions require additional setup to work. In that case, a system administrator will handle the change.
Miraheze runs on Debian and uses a multitude of servers. Our server configuration is managed by Puppet, and we work with various kinds of technologies. We use MediaWiki with Apache, GDNSD, MariaDB, NGINX and Varnish to power the web stack. If you are familiar with one or more of the software mentioned above, we would love to hear about your experience! Extra help is always welcome, and even the smallest improvements (fixed bugs/performance, etc.) for you, can be a big improvement for us. Please get in touch with the System administrators if you would like to contribute in this area or simply make a Phabricator task for it.