Add species-specific parameters for splice-aware index generation (e.g., average exon length, sjdbOverhang)
Nobody has claimed this yet.
- Dominant language
- Nextflow
- Stars
- 23
- Forks
- 6
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 6
Description
Description of feature
Currently, nf-core/references builds genome indices for splice-aware aligners (STAR, HISAT2, etc.) using mostly fixed or default parameters.
However, some of these parameters should ideally depend on species-specific genome architecture, especially for large or compact genomes where exon/intron structure varies significantly.
Motivation
When building references across multiple species (e.g., mammals vs. insects vs. plants), the same hardcoded STAR parameters can lead to suboptimal or even invalid splice junction indexes.
Allowing per-species or per-asset parameterization (e.g. via YAML keys in assets.yaml or a separate JSON schema) would make the pipeline far more general and biologically robust.
Proposed implementation
Extend the asset schema to include a params: section, e.g.:
genomes:
- id: Homo_sapiens.GRCh38
fasta: path/to/genome.fa
gtf: path/to/annotation.gtf
params:
star:
sjdbOverhang: 99
genomeSAindexNbases: 14
notes:
avg_exon_length: 170
- id: Drosophila_melanogaster.BDGP6
fasta: path/to/genome.fa
gtf: path/to/annotation.gtf
params:
star:
sjdbOverhang: 74
genomeSAindexNbases: 11
notes:
avg_exon_length: 280
Expose these through the pipeline as ext.args or --star_* overrides in the relevant modules.
Existing --kallisto_make_unique flag shows how such params can be exposed consistently.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the asset schema in assets.yaml and the existing --kallisto_make_unique handling, then trace how relevant modules expose parameters through ext.args or --star_* overrides. Define how per-asset params are represented for STAR and other splice-aware aligners, and verify that species-specific values reach index generation without breaking existing assets.
Written by the indexing model from the issue text.
Assessment
- Domain
- bioinformatics
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100