How fulcrumgenomics/fgbio works
fgbio is a command-line toolkit for genomic and next-generation sequencing analysis. Users invoke focused tools on read-level or variant-level data; capabilities include FASTQ processing and demultiplexing, BAM manipulation, UMI consensus workflows, reference-file utilities, variant operations, and quality-control metrics. The graph groups these product areas and includes the shared command-line and SAM/BAM foundations. The README documents the tool capabilities and broad input types; sampled source excerpts are incomplete, so internal links between individual tools are omitted where their calls are not shown.
Main entry points: FgBioMain.scala Tool commands · DemuxFastqs.scala FASTQ tools · FilterBam.scala BAM tools · AnnotateBamWithUmis.scala UMI annotation
Components 24
Command line
- Tool commands
src/main/scala/com/fulcrumgenomics/cmdline/FgBioMain.scala - Tool API
src/main/scala/com/fulcrumgenomics/cmdline/FgBioTool.scala - Shared definitions
src/main/scala/com/fulcrumgenomics/FgBioDef.scala
Read processing
- FASTQ tools
src/main/scala/com/fulcrumgenomics/fastq/DemuxFastqs.scala - FASTQ I/O
src/main/scala/com/fulcrumgenomics/fastq/FastqSource.scala - BAM tools
src/main/scala/com/fulcrumgenomics/bam/FilterBam.scala - BAM utilities
src/main/scala/com/fulcrumgenomics/bam/Bams.scala - SAM reader
src/main/scala/com/fulcrumgenomics/bam/api/SamSource.scala - SAM records
src/main/scala/com/fulcrumgenomics/bam/api/SamRecord.scala - SAM writer
src/main/scala/com/fulcrumgenomics/bam/api/SamWriter.scala - Sample metadata
src/main/scala/com/fulcrumgenomics/illumina/Sample.scala
UMI workflows
- UMI annotation
src/main/scala/com/fulcrumgenomics/umi/AnnotateBamWithUmis.scala - UMI grouping
src/main/scala/com/fulcrumgenomics/umi/GroupReadsByUmi.scala - Consensus reads
src/main/scala/com/fulcrumgenomics/umi/CallMolecularConsensusReads.scala - Consensus tags
src/main/scala/com/fulcrumgenomics/umi/ConsensusTags.scala
Reference and variants
- FASTA tools
src/main/scala/com/fulcrumgenomics/fasta/UpdateFastaContigNames.scala - Sequence dictionary
src/main/scala/com/fulcrumgenomics/fasta/SequenceDictionary.scala - VCF tools
src/main/scala/com/fulcrumgenomics/vcf/MakeMixtureVcf.scala - Variant model
src/main/scala/com/fulcrumgenomics/vcf/api/Variant.scala
Quality control
- Read QC
src/main/scala/com/fulcrumgenomics/bam/ErrorRateByReadPosition.scala - RNA-seq QC
src/main/scala/com/fulcrumgenomics/rnaseq/EstimateRnaSeqInsertSize.scala - Metrics
src/main/scala/com/fulcrumgenomics/util/Metric.scala
Other components
- Bioinformatics user
- FASTQ / BAM inputs
Connections 12
- Bioinformatics user → Tool commands: runs
README.md - Tool commands → FASTQ tools: runs
README.md - Tool commands → BAM tools: runs
README.md - Tool commands → UMI annotation: runs
README.md - Tool commands → UMI grouping: runs
README.md - Tool commands → Consensus reads: runs
README.md - Tool commands → FASTA tools: runs
README.md - Tool commands → VCF tools: runs
README.md - Tool commands → Read QC: runs
README.md - Tool commands → RNA-seq QC: runs
README.md - FASTQ / BAM inputs → FASTQ tools: provides reads
README.md - FASTQ / BAM inputs → BAM tools: provides reads
README.md