diff --git a/src/nf_modules/fastqc/main.nf b/src/nf_modules/fastqc/main.nf
new file mode 100644
index 0000000000000000000000000000000000000000..4baa187308f9f2e6e04aa2342dd27e817d60bca8
--- /dev/null
+++ b/src/nf_modules/fastqc/main.nf
@@ -0,0 +1,40 @@
+version = "0.11.5"
+container_url = "lbmc/fastqc:${version}"
+
+process fastqc_fastq_pairedend {
+  container = "${container_url}"
+  label "big_mem_mono_cpus"
+  tag "$pair_id"
+  publishDir "results/fastq/fastqc/", mode: 'copy'
+
+  input:
+  tuple val(pair_id), path(reads)
+
+  output:
+  path "*.{zip,html}", emit: report
+
+  script:
+"""
+fastqc --quiet --threads ${task.cpus} --format fastq --outdir ./ \
+${reads[0]} ${reads[1]}
+"""
+}
+
+process fastqc_fastq_singleend {
+  container = "${container_url}"
+  label "big_mem_mono_cpus"
+  tag "$file_id"
+  publishDir "results/fastq/fastqc/", mode: 'copy'
+
+  input:
+  tuple val(file_id), path(reads)
+
+  output:
+    path "*.{zip,html}", emit: report
+
+  script:
+"""
+fastqc --quiet --threads ${task.cpus} --format fastq --outdir ./ ${reads}
+"""
+}
+