Creating a plugin

📘

Plugin requirements

A plugin only needs to contain those files that it adds/makes changes too. Any other files required by the Ensembl instance will be obtained from ensembl-webcode or from the other plugins that have been loaded. This means that a basic plugin could contain a single file but still add/alter functionality.

To be loaded by easy mirror, the only requirement is that any newly created plugin must be in an accessible git repository (e.g. hosted on github or bitbucket) and that repository must be added to the [REPOSITORIES] stanza of setup.ini.

To create a new plugin simply create a git repository with a new version of the file(s) you would like to alter, preserving the directory structure.

To modify the links at the bottom of the home page, for example, the relevant file (for an Ensembl Genomes based site) is eg-web-common/modules/EnsEMBL/Web/Document/Element/FooterLinks.pm.

So add a new FooterLinks.pm file (with appropriate edits) to a modules/EnsEMBL/Web/Document/Element/ directory in your git repository, commit and push the changes. Add your repository details to the [REPOSITORIES] stanza of setup.ini and your new repository will be included next time you run Step 4.1: Update Ensembl webcode and the changes will be visible on your Ensembl site after you have re-run Step 4.2: Reload Ensembl website.