The most important elements of FlowCraft’s directory structure are:
components: Contains the
Processclasses for each component
templates: Contains the nextflow jinja template files for each component
engine.py: The engine of FlowCraft that builds the pipeline
process.py: Contains the abstract
Processclass that is inherited
- by all component classes
pipeline_parser.py: Functions that parse and check the pipeline string
recipe.py: Class responsible for creating recipes
templates: A git submodule of the templates repository that contain the template scripts for the components.
- Style: the code base of flowcraft should adhere (the best it can) to the PEP8 style guidelines.
- Docstrings: code should be generally well documented following the numpy docstring style.
- Quality: there is also an integration with the codacy service to evaluate code quality, which is useful for detecting several coding issues that may appear.
Tests are performed using pytest and the source files are stored in the
flowcraft/tests directory. Tests must be executed on the root directory
of the repository
Documentation source files are stored in the
docs directory. The general
configuration file is found in
docs/conf.py and the entry
point to the documentation is