Contributing

Contributions can include bug reports, feature requests, code, tests, documentation, data loaders, and interactive tools. Ask general questions in GitHub Discussions.

Contribution paths

Goal

Start here

Report a bug or request a feature

Use GitHub Issues.

Change code or tests

Development setup and workflow covers environment setup, branches, local checks, pull requests, and code standards.

Improve the documentation

Documentation contributions covers documentation types, docstrings, and local builds.

Add support for an endstation

Implementing a data loader plugin covers loader implementation, metadata, multiple-file scans, summaries, and tests.

Add an interactive analysis tool

Authoring interactive tools covers the required tool interface, optional Manager integration, and tests.

Bug reports and feature requests

Search the issue tracker before you open an issue. For a bug, include a minimal example, the observed result, the expected result, and the relevant environment details. For guidance, see How to create a minimal reproducible example.

Pull requests

Before you open a pull request:

  • Keep the change focused on one feature or problem.

  • Add or update tests for changed behavior.

  • Run the checks that apply to the changed files.

  • Build the documentation when you change documentation sources or public docstrings.

  • Use a Conventional Commit title.

  • Describe the behavior change and list the checks that you ran.

Use a draft pull request when you need feedback before the change is ready to merge. See Development setup and workflow for the complete development and submission workflow.