CONTRIBUTING.md
This document serves as a reference for the Mirador community and others interested in the project. It aims to outline agreed upon practices that are used in the development and maintenance of the Mirador software.
Contributing to Mirador
Contributions to Mirador are always welcome, however, it will always be helpful to begin any large change by submitting an issue or engaging with the Mirador community. For more on this, see plugin architecture. Mirador 3.0 and beyond adheres to semantic versioning so that adopters and contributors can better understand what changes can be expected in released versions of the software.
All contributions should be submitted as a GitHub pull request to the master
branch. Pull requests must be reviewed and accepted by another Mirador maintainer and pass all continuous integration checks. Contributions should have tests for the feature or bug fix, documentation and should conform to the Mirador agreed upon coding style. Contributions should not include a “built” version of Mirador, this will help in reducing merge conflicts.
Adding dependencies
Careful consideration should be given when adding software dependencies to Mirador. During the code review process, new dependencies may be evaluated on the following considerations:
- added size of the dependency
- whether or not that dependency is maintained and tested
- how the dependency may interact with Mirador embedded in other environments
As a general rule, any dependencies added should not be committed directly, but should use a package manager to require the dependency.
Dependencies should also be scoped (both for style and script) so that they do not interact with a containing application.