Bionitio

Bionitio generates standardized project templates and reference implementations to produce reproducible, testable bioinformatics software.


Key Features:

  • Automated project scaffolding: Creates a complete project skeleton with a single command in one of 12 supported programming languages.
  • Command-line argument parsing: Provides template code for parsing command-line arguments.
  • Robust error handling: Includes standardized error-handling patterns and defined exit status values.
  • Progress logging: Supplies template support for progress logging during execution.
  • Comprehensive test suite: Generates a test suite for validating correctness and reliability.
  • Version control scaffolding: Initializes revision-control configuration for generated projects.
  • Containerization support: Includes containerization artifacts to support reproducibility and deployment.
  • Prototypical bioinformatics task: Implements a functional prototypical bioinformatics task as a reference template.
  • Best-practice software engineering: Integrates established software engineering practices across generated code.

Scientific Applications:

  • Reproducible analysis development: Enables development of reproducible bioinformatics tools and pipelines.
  • Standardized method implementation: Provides reference implementations for prototypical bioinformatics tasks to support method development and benchmarking.
  • Scalability and interoperability: Facilitates creation of tools that integrate with version control and containerization to improve scalability and interoperability.
  • Error reduction and resource efficiency: Promotes standardized practices that help reduce erroneous results and inefficient resource use.

Methodology:

Automated scaffolding via a single command creates a project skeleton in one of 12 supported programming languages; templates include command-line argument parsing, robust error handling with defined exit status values, progress logging, a comprehensive test suite, revision-control initialization, containerization artifacts, and an implemented prototypical bioinformatics task.

Topics

Details

License:
MIT
Programming Languages:
Shell
Added:
11/14/2019
Last Updated:
12/9/2020

Operations

Publications

Georgeson P, Syme A, Sloggett C, Chung J, Dashnow H, Milton M, Lonsdale A, Powell D, Seemann T, Pope B. Bionitio: demonstrating and facilitating best practices for bioinformatics command-line software. GigaScience. 2019;8(9). doi:10.1093/gigascience/giz109. PMID:31544213. PMCID:PMC6755254.