Contributing/he

Miraheze is made up of volunteers, ordinary people just like you!

No matter your MediaWiki expertise, you can help! Below are many opportunities you can take to help volunteer on Miraheze.

How can I help?
{{new collapse 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!
 * headline = Help out technically!
 * content =

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!
 * Help on GitHub

Anyone with a GitHub account (available for free) is able to propose file changes.

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.
 * Guidelines & Tips

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. Can be a number, true/false, or an array, depending on the setting.)

Some of the easier things to do is enabling extensions that are already installed (See the section of wgConf called extensions, which follows the format above where "Setting name" will be something like 'wmgUse Extension ' where Extension is the name of the extension to enable.

{{Note}} Some extensions require additional setup to work. In that case, a system administrator will handle the change.

התקנת הרחבה חדשה או מעטפת חדשה
Anyone can propose changes to the Miraheze/mediawiki repo. To install a new extension or skin not already installed (not enable one on a wiki), please see Adding a new extension.

Miraheze runs on Debian: 15 VPSs hosted by RamNode and 1 VPS hosted by Backupsy (storing backups). They are mostly powered by OpenVZ, in very rare cases KVM. 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. }}
 * Help out internally