# Base repository for reusable Viash components


This repository is a collection of reproducible and reusable Viash
components.

## Objectives

- **Reusability**: Facilitating the use of components across various
  projects and contexts.
- **Reproducibility**: Guaranteeing that bioinformatics analyses can be
  reliably replicated.
- **Best Practices**: Adhering to established standards in software
  development and bioinformatics.

## Contributing

We encourage contributions from the community. To contribute:

1.  **Fork the Repository**: Start by forking this repository to your
    account.
2.  **Develop Your Component**: Create your Viash component, ensuring it
    aligns with our best practices (detailed below).
3.  **Submit a Pull Request**: After testing your component, submit a
    pull request for review.

## Contribution Guidelines

The contribution guidelines describes which steps you should follow to
contribute a component to this repository.

1.  Find a component to contribute
2.  Add config template
3.  Fill in the metadata
4.  Find a suitable container
5.  Create help file
6.  Create or fetch test data
7.  Add arguments for the input files
8.  Add arguments for the output files
9.  Add arguments for the other arguments
10. Add a Docker engine
11. Write a runner script
12. Create test script
13. Create a `/var/software_versions.txt` file

See the [CONTRIBUTING](CONTRIBUTING.md) file for more details.

## Support and Community

For support, questions, or to join our community:

- **Issues**: Submit questions or issues via the [GitHub issue
  tracker](https://github.com/viash-hub/base/issues).
- **Discussions**: Join our discussions via [GitHub
  Discussions](https://github.com/viash-hub/base/discussions).

## License

This repository is licensed under an MIT license. See the
[LICENSE](LICENSE) file for details.
