You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -97,11 +97,13 @@ By default, Nextflow saves them to `$NXF_HOME/assets`.
97
97
tree -L 2 $NXF_HOME/assets/
98
98
```
99
99
100
-
```console title="Output"
101
-
/workspaces/.nextflow/assets/
102
-
└── nf-core
103
-
└── demo
104
-
```
100
+
??? example "Directory contents"
101
+
102
+
```console
103
+
/workspaces/.nextflow/assets/
104
+
└── nf-core
105
+
└── demo
106
+
```
105
107
106
108
!!! note
107
109
@@ -122,11 +124,13 @@ This creates a shortcut that makes it easier to explore the code we just downloa
122
124
tree -L 2 pipelines
123
125
```
124
126
125
-
```console title="Output"
126
-
pipelines
127
-
└── nf-core
128
-
└── demo
129
-
```
127
+
??? example "Directory contents"
128
+
129
+
```console
130
+
pipelines
131
+
└── nf-core
132
+
└── demo
133
+
```
130
134
131
135
Now we can more easily peek into the source code as needed.
132
136
@@ -294,28 +298,30 @@ Finally, let's have a look at the `demo-results` directory produced by the pipel
294
298
tree -L 2 demo-results
295
299
```
296
300
297
-
```console title="Output"
298
-
demo-results/
299
-
├── fastqc
300
-
│ ├── SAMPLE1_PE
301
-
│ ├── SAMPLE2_PE
302
-
│ └── SAMPLE3_SE
303
-
├── fq
304
-
│ ├── SAMPLE1_PE
305
-
│ ├── SAMPLE2_PE
306
-
│ └── SAMPLE3_SE
307
-
├── multiqc
308
-
│ ├── multiqc_data
309
-
│ ├── multiqc_plots
310
-
│ └── multiqc_report.html
311
-
└── pipeline_info
312
-
├── execution_report_2025-03-05_09-44-26.html
313
-
├── execution_timeline_2025-03-05_09-44-26.html
314
-
├── execution_trace_2025-03-05_09-44-26.txt
315
-
├── nf_core_pipeline_software_mqc_versions.yml
316
-
├── params_2025-03-05_09-44-29.json
317
-
└── pipeline_dag_2025-03-05_09-44-26.html
318
-
```
301
+
??? example "Directory contents"
302
+
303
+
```console
304
+
demo-results/
305
+
├── fastqc
306
+
│ ├── SAMPLE1_PE
307
+
│ ├── SAMPLE2_PE
308
+
│ └── SAMPLE3_SE
309
+
├── fq
310
+
│ ├── SAMPLE1_PE
311
+
│ ├── SAMPLE2_PE
312
+
│ └── SAMPLE3_SE
313
+
├── multiqc
314
+
│ ├── multiqc_data
315
+
│ ├── multiqc_plots
316
+
│ └── multiqc_report.html
317
+
└── pipeline_info
318
+
├── execution_report_2025-03-05_09-44-26.html
319
+
├── execution_timeline_2025-03-05_09-44-26.html
320
+
├── execution_trace_2025-03-05_09-44-26.txt
321
+
├── nf_core_pipeline_software_mqc_versions.yml
322
+
├── params_2025-03-05_09-44-29.json
323
+
└── pipeline_dag_2025-03-05_09-44-26.html
324
+
```
319
325
320
326
If you're curious about the specifics of what that all means, check out [the nf-core/demo pipeline documentation page](https://nf-co.re/demo/1.0.2/).
321
327
@@ -348,28 +354,30 @@ You can either use `tree` or use the file explorer in your IDE.
348
354
tree -L 1 pipelines/nf-core/demo
349
355
```
350
356
351
-
```console title="Output (top-level only)"
352
-
pipelines/nf-core/demo
353
-
├── assets
354
-
├── CHANGELOG.md
355
-
├── CITATIONS.md
356
-
├── CODE_OF_CONDUCT.md
357
-
├── conf
358
-
├── docs
359
-
├── LICENSE
360
-
├── main.nf
361
-
├── modules
362
-
├── modules.json
363
-
├── nextflow.config
364
-
├── nextflow_schema.json
365
-
├── nf-test.config
366
-
├── README.md
367
-
├── ro-crate-metadata.json
368
-
├── subworkflows
369
-
├── tests
370
-
├── tower.yml
371
-
└── workflows
372
-
```
357
+
??? example "Directory contents"
358
+
359
+
```console
360
+
pipelines/nf-core/demo
361
+
├── assets
362
+
├── CHANGELOG.md
363
+
├── CITATIONS.md
364
+
├── CODE_OF_CONDUCT.md
365
+
├── conf
366
+
├── docs
367
+
├── LICENSE
368
+
├── main.nf
369
+
├── modules
370
+
├── modules.json
371
+
├── nextflow.config
372
+
├── nextflow_schema.json
373
+
├── nf-test.config
374
+
├── README.md
375
+
├── ro-crate-metadata.json
376
+
├── subworkflows
377
+
├── tests
378
+
├── tower.yml
379
+
└── workflows
380
+
```
373
381
374
382
There's a lot going on in there, so we'll tackle this in stages.
375
383
We're going to look at the following categories:
@@ -399,10 +407,12 @@ The central logic of the pipeline is stored inside the `workflows` folder, in a
399
407
tree pipelines/nf-core/demo/workflows
400
408
```
401
409
402
-
```console title="Output"
403
-
pipelines/nf-core/demo/workflows
404
-
└── demo.nf
405
-
```
410
+
??? example "Directory contents"
411
+
412
+
```console
413
+
pipelines/nf-core/demo/workflows
414
+
└── demo.nf
415
+
```
406
416
407
417
`main.nf` also calls a few 'housekeeping' subworkflows that we're going to ignore for now.
408
418
@@ -436,26 +446,28 @@ The module code file describing the process is always called `main.nf`, and is a
436
446
tree -L 3 pipelines/nf-core/demo/modules
437
447
```
438
448
439
-
```console title="Output"
440
-
pipelines/nf-core/demo/modules
441
-
└── nf-core
442
-
├── fastqc
443
-
│ ├── environment.yml
444
-
│ ├── main.nf
445
-
│ ├── meta.yml
446
-
│ └── tests
447
-
├── multiqc
448
-
│ ├── environment.yml
449
-
│ ├── main.nf
450
-
│ ├── meta.yml
451
-
│ └── tests
452
-
└── seqtk
453
-
└── trim
454
-
├── environment.yml
455
-
├── main.nf
449
+
??? example "Directory contents"
450
+
451
+
```console
452
+
pipelines/nf-core/demo/modules
453
+
└── nf-core
454
+
├── fastqc
455
+
│ ├── environment.yml
456
+
│ ├── main.nf
457
+
│ ├── meta.yml
458
+
│ └── tests
459
+
├── multiqc
460
+
│ ├── environment.yml
461
+
│ ├── main.nf
462
+
│ ├── meta.yml
463
+
│ └── tests
464
+
└── seqtk
465
+
└── trim
466
+
├── environment.yml
467
+
├── main.nf
456
468
├── meta.yml
457
469
└── tests
458
-
```
470
+
```
459
471
460
472
Here you see that the `fastqc` and `multiqc` modules sit at the top level within the `nf-core` modules, whereas the `trim` module sits under the toolkit that it belongs to, `seqtk`.
461
473
In this case there are no `local` modules.
@@ -470,25 +482,27 @@ In an nf-core pipeline, the subworkflows are divided into `local` and `nf-core`
470
482
tree -L 3 pipelines/nf-core/demo/subworkflows
471
483
```
472
484
473
-
```console title="Output"
474
-
pipelines/nf-core/demo/subworkflows
475
-
├── local
476
-
│ └── utils_nfcore_demo_pipeline
477
-
│ └── main.nf
478
-
└── nf-core
479
-
├── utils_nextflow_pipeline
480
-
│ ├── main.nf
481
-
│ ├── meta.yml
482
-
│ └── tests
483
-
├── utils_nfcore_pipeline
484
-
│ ├── main.nf
485
-
│ ├── meta.yml
486
-
│ └── tests
487
-
└── utils_nfschema_plugin
488
-
├── main.nf
489
-
├── meta.yml
485
+
??? example "Directory contents"
486
+
487
+
```console
488
+
pipelines/nf-core/demo/subworkflows
489
+
├── local
490
+
│ └── utils_nfcore_demo_pipeline
491
+
│ └── main.nf
492
+
└── nf-core
493
+
├── utils_nextflow_pipeline
494
+
│ ├── main.nf
495
+
│ ├── meta.yml
496
+
│ └── tests
497
+
├── utils_nfcore_pipeline
498
+
│ ├── main.nf
499
+
│ ├── meta.yml
500
+
│ └── tests
501
+
└── utils_nfschema_plugin
502
+
├── main.nf
503
+
├── meta.yml
490
504
└── tests
491
-
```
505
+
```
492
506
493
507
In the case of the `nf-core/demo` pipeline, the subworkflows involved are all 'utility' or housekeeping subworkflows, as denoted by the `utils_` prefix in their names.
494
508
These subworkflows are what produces the fancy nf-core header in the console output, among other accessory functions.
0 commit comments