TAFFISH wrapper for FastQC, a quality-control tool for high-throughput sequencing data.
This repository packages upstream FastQC 0.12.1 as a TAFFISH tool app. It uses
the official compiled fastqc_v0.12.1.zip release and exposes the upstream
fastqc command through the versioned taf-fastqc wrapper.
Install from the public TAFFISH Hub index:
taf update
taf install fastqcInstall the exact release:
taf install fastqc 0.12.1-r1For local testing before the app is published to the public index:
taf install --from .Show TAFFISH app help:
taf-fastqc --helpShow the TAFFISH package version:
taf-fastqc --versionShow the upstream FastQC version:
taf-fastqc fastqc --version
taf-fastqc -- --versionShow upstream command help:
taf-fastqc fastqc --help
taf-fastqc -- --helpRun FastQC on a FASTQ file:
taf-fastqc fastqc reads.fq.gzWrite reports to an existing output directory:
mkdir -p fastqc_reports
taf-fastqc fastqc --outdir fastqc_reports reads.fq.gzRun several files with explicit memory and thread settings:
taf-fastqc fastqc \
--outdir fastqc_reports \
--threads 4 \
--memory 512 \
sample_R1.fq.gz sample_R2.fq.gzExtract the report zip and use SVG graphs:
taf-fastqc fastqc \
--outdir fastqc_reports \
--extract \
--svg \
reads.fq.gzForce input format or use custom adapter/contaminant/limits files:
taf-fastqc fastqc --format sam --outdir fastqc_reports alignments.sam
taf-fastqc fastqc --adapters adapters.txt --contaminants contaminants.txt reads.fq.gz
taf-fastqc fastqc --limits limits.txt reads.fq.gzBecause this is a command-mode TAFFISH tool, the first non-option argument is
the in-container command. For normal FastQC usage, naming the upstream fastqc
binary explicitly is the clearest form:
taf-fastqc fastqc reads.fq.gz
taf-fastqc fastqc --helpThe app also accepts the common shorthand when the first argument is a FastQC option:
taf-fastqc -- --help
taf-fastqc --outdir fastqc_reports reads.fq.gzThis README lists common command-line usage patterns, not the full upstream
manual. The TAFFISH wrapper calls the upstream fastqc script directly, so
official FastQC options are available as upstream implements them. Use
taf-fastqc fastqc --help for the complete option list.
name: fastqc
command: taf-fastqc
version: 0.12.1-r1
kind: tool
image: ghcr.io/taffish/fastqc:0.12.1-r1
The container image is built from docker/Dockerfile. It starts from
debian:12-slim, downloads the official FastQC fastqc_v0.12.1.zip package,
and installs it under /opt/FastQC.
The image includes these user-facing commands and runtimes:
fastqc
java
perl
unzip
gzip
bzip2
FastQC is a Java application launched through the upstream Perl wrapper. The container therefore includes OpenJDK, Perl, and font packages needed for headless report generation. The official FastQC package is kept with its configuration files, templates, help files, htsjdk library, bzip2 reader, and JHDF5 jar.
The app targets non-interactive command-line FastQC usage. The upstream
no-argument GUI mode is not a useful mode inside a normal TAFFISH container;
pass input files or --help/--version instead.
FastQC supports FASTQ, gzip-compressed FASTQ, bzip2-compressed FASTQ, SAM, and
BAM inputs. The upstream package also contains JHDF5 support for Nanopore
FAST5 mode (--nano), but its bundled native JHDF5 libraries are provided for
Linux amd64/i386, not native Linux arm64. If you need --nano/FAST5 processing
on an arm64 host, use the amd64 image through Docker or Podman platform
emulation, for example:
TAFFISH_CONTAINER_BACKEND=docker \
TAFFISH_DOCKER_RUN_ARGS="--platform linux/amd64" \
taf-fastqc fastqc --nano fast5_directoryThe image is built and validated for:
linux/amd64
linux/arm64
The native arm64 validation covers the standard command-line report paths, not the upstream JHDF5/FAST5 native-library path described above.
The TAFFISH metadata declares a Docker smoke check:
exist: fastqc, java, perl, unzip, gzip, bzip2
test: FastQC reports upstream version 0.12.1
test: upstream FastQC help is available
test: Java and Perl runtime checks pass
test: a tiny FASTQ produces HTML and zip reports
test: gzip-compressed FASTQ is accepted
test: bzip2-compressed FASTQ is accepted
test: a tiny SAM file is accepted with --format sam
test: --svg, --nogroup, --kmers, --memory, --threads, and --adapters run
test: --extract creates the extracted report directory
During TAFFISH Hub indexing, this smoke metadata verifies that the published image exposes the expected command surface, reports the pinned upstream version, and can run representative local sequencing QC report workflows. It does not exhaustively validate every possible upstream option combination or every scientific interpretation of a FastQC report.
Each smoke command is self-contained because the public index runs every
[smoke].test entry in a fresh temporary container. No smoke entry depends on
files created by an earlier entry.
- Project: FastQC
- Homepage: https://www.bioinformatics.babraham.ac.uk/projects/fastqc/
- Source: https://github.com/s-andrews/FastQC
- Release: https://github.com/s-andrews/FastQC/releases/tag/v0.12.1
- Download: https://www.bioinformatics.babraham.ac.uk/projects/fastqc/fastqc_v0.12.1.zip
- Upstream license: GPL-3.0-or-later
- Citation: Andrews S. FastQC: a quality control tool for high throughput sequence data. 2010.
Useful checks before publishing:
taf check
taf compile -- fastqc --version
taf publish --release --dry-run
docker build -t ghcr.io/taffish/fastqc:0.12.1-r1 -f docker/Dockerfile .
docker build --platform linux/amd64 -t ghcr.io/taffish/fastqc:0.12.1-r1-amd64-test -f docker/Dockerfile .
docker build --platform linux/arm64 -t ghcr.io/taffish/fastqc:0.12.1-r1-arm64-test -f docker/Dockerfile .
docker run --rm ghcr.io/taffish/fastqc:0.12.1-r1 fastqc --version
docker run --rm ghcr.io/taffish/fastqc:0.12.1-r1 fastqc --helpThe repository wrapper files are licensed under Apache-2.0. Upstream FastQC is distributed under GPL-3.0-or-later, and bundled third-party components remain under their own upstream licenses.