Thank you for your interest in contributing to Compass! Compass is an open-source research software project developed in the context of FAIR Signposting and scholarly communication.
We welcome contributions in many forms — code, documentation, examples, and discussion.
You can contribute by:
- reporting bugs or unexpected behavior,
- improving documentation or examples,
- proposing new features or validation rules,
- submitting code improvements or fixes.
Documentation and examples are first-class contributions.
Please use GitHub Issues to report bugs or propose changes.
When reporting a bug, try to include:
- a minimal, reproducible example,
- the Compass version,
- relevant input data (e.g. WebLinks or Link Sets),
- expected vs. observed behavior.
For non-trivial changes (new validators, new semantics, API changes), we strongly recommend opening an issue first to discuss the design.
Compass follows published standards (RFC 8288, RFC 9264, FAIR Signposting). Proposed changes must align with these specifications.
To contribute code:
- Fork the repository
- Create a feature branch
- Implement your changes
- Add or update tests
- Ensure all CI checks pass
- Open a Pull Request
Please:
- keep changes focused and well-scoped,
- follow the existing coding style,
- include tests for new behavior,
- update documentation where relevant.
Compass is developed as research software. Contributions should aim to:
- preserve reproducibility and determinism,
- avoid breaking semantics without discussion,
- favor clarity over cleverness,
- document assumptions and decisions.
All contributions are reviewed by maintainers. Maintainers may request changes or clarification.
Final decisions on acceptance rest with the project maintainers.
We expect all contributors to interact respectfully and professionally. Harassment or exclusionary behavior will not be tolerated.
Thank you for helping improve Compass!