Fandom Developers Wiki
Fandom Developers Wiki
Advertisement

The Fandom codebase is stored in their GitHub repository. It is the central place where the code that runs Fandom and related projects is stored. Versions are tracked by the repository and histories are preserved. Fandom currently hosts its repositories on GitHub using the Git version control system. Fandom's code is mostly in private repositories. The rest of this article assumes you have access to their private UCP repo.

Downloading from the repository

Finding the latest version of the Fandom codebase

Deployed code is available in the tag view on GitHub. The most recent release-* branch should be the latest deployable code. The dev branch is the location of incoming changes, that should be released in the next week.

Branches

We use branches to maintain and manage our code:

dev
contains the most current version of the code
release-*
contains snapshots of the development branch for release
PROJECT-NUMBER
contains per ticket copies of the development branch with changes for a specific ticket (normally a bug fix or feature implementation) in the format where PROJECT represents the project the ticket relates to, and NUMBER represents the number of the ticket in the project's queue. These branches are then merged back into the development branch once code review has been completed.

File layout

This section details the organization of our dev branch. Paths are relative to dev root. Everything that is not listed here comes from MediaWiki core (note: this list might still be incomplete).

extensions/fandom/
Most Fandom features, packaged as stand-alone extensions
includes/fandom/
Dependencies, services and helper classes used in different places in the code
maintenance/fandom/
Maintenance scripts, some DB schemas and misc. scripts
Text above can be found here (edit)
Advertisement