| name | bio-workflows-atacseq-pipeline |
| description | End-to-end ATAC-seq workflow from FASTQ files to differential accessibility and TF footprinting. Covers alignment, peak calling with MACS3, QC metrics, and optional TOBIAS footprinting. Use when running end-to-end ATAC-seq analysis from FASTQ to differential accessibility. |
| tool_type | mixed |
| primary_tool | MACS3 |
| workflow | true |
| depends_on | ["read-qc/fastp-workflow","read-alignment/bowtie2-alignment","alignment-files/duplicate-handling","atac-seq/atac-peak-calling","atac-seq/atac-qc","atac-seq/differential-accessibility","atac-seq/footprinting"] |
| qc_checkpoints | [{"after_qc":"Q30 >85%, adapter content <5%"},{"after_alignment":"Mapping rate >80%, mitochondrial <20%"},{"after_peaks":"FRiP >20%, TSS enrichment >5"},{"after_footprinting":"Motif enrichment validates TF activity"}] |
ATAC-seq Pipeline
Complete workflow from raw ATAC-seq FASTQ files to accessibility peaks, differential analysis, and TF footprinting.
Workflow Overview
FASTQ files
|
v
[1. QC & Trimming] -----> fastp (Nextera adapters)
|
v
[2. Alignment] ---------> Bowtie2
|
v
[3. BAM Processing] ----> filter, shift, dedup
|
v
[4. Peak Calling] ------> MACS3
|
v
[5. QC] ----------------> TSS enrichment, FRiP, fragment size
|
v
[6. Differential] ------> DiffBind (optional)
|
v
[7. Footprinting] ------> TOBIAS (optional)
|
v
Accessibility peaks + TF activity
Primary Path: Bowtie2 + MACS3
Step 1: Quality Control with fastp
NEXTERA_R1="CTGTCTCTTATACACATCT"
NEXTERA_R2="CTGTCTCTTATACACATCT"
for sample in sample1 sample2 sample3; do
fastp -i ${sample}_R1.fastq.gz -I ${sample}_R2.fastq.gz \
-o trimmed/${sample}_R1.fq.gz -O trimmed/${sample}_R2.fq.gz \
--adapter_sequence ${NEXTERA_R1} \
--adapter_sequence_r2 ${NEXTERA_R2} \
--qualified_quality_phred 20 \
--length_required 25 \
--html qc/${sample}_fastp.html
done
Step 2: Alignment with Bowtie2
bowtie2-build genome.fa bt2_index/genome
for sample in sample1 sample2 sample3; do
bowtie2 -p 8 -x bt2_index/genome \
-1 trimmed/${sample}_R1.fq.gz \
-2 trimmed/${sample}_R2.fq.gz \
--very-sensitive \
--no-mixed --no-discordant \
-X 2000 \
2> aligned/${sample}.log | \
samtools view -@ 4 -bS -q 30 -f 2 - | \
samtools sort -@ 4 -o aligned/${sample}.bam
done