Skip to content

Latest commit

 

History

History
93 lines (60 loc) · 2.12 KB

File metadata and controls

93 lines (60 loc) · 2.12 KB

Contributing to Linksmith

Thank you for your interest in contributing to Linksmith! Linksmith is an open-source research software project developed in the context of machine-actionable navigation of web resources.

We welcome contributions in many forms — code, documentation, examples, and discussion.


Ways to contribute

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.


Reporting issues

Please use GitHub Issues to report bugs or propose changes.

When reporting a bug, try to include:

  • a minimal, reproducible example,
  • the Linksmith version,
  • relevant input data (e.g. raw input),
  • expected vs. observed behavior.

Proposing changes

For non-trivial changes (new validators, new semantics, API changes), we strongly recommend opening an issue first to discuss the design.

Linksmith follows published standards (mainly RFC 8288). Proposed changes must align with it or related specifications.


Code contributions

To contribute code:

  1. Fork the repository
  2. Create a feature branch
  3. Implement your changes
  4. Add or update tests
  5. Ensure all CI checks pass
  6. 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.

Scientific software principles

Linksmith 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.

Review process

All contributions are reviewed by maintainers. Maintainers may request changes or clarification.

Final decisions on acceptance rest with the project maintainers.


Code of conduct

We expect all contributors to interact respectfully and professionally. Harassment or exclusionary behavior will not be tolerated.


Thank you for helping improve Linksmith!