Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: Add mkdocs documentation #3

Merged
merged 3 commits into from
Sep 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# This workflow will automatically deploy the mkdocs documentation
# See https://parkererickson.github.io/portfolio/blog/MkDocsCD/

name: docs

on:
push:
branches: [main]
workflow_dispatch:

jobs:
build:
name: Build and Deploy Documentation
runs-on: ubuntu-latest
steps:
- name: Checkout Master
uses: actions/checkout@v2

- name: Set up Python 3
uses: actions/setup-python@v2
with:
python-version: "3.10.8"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install mkdocs
- name: Deploy
run: |
git pull
mkdocs gh-deploy
35 changes: 18 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,30 +30,33 @@ The pipeline is built using [Nextflow](https://www.nextflow.io), a workflow tool

3. Download the pipeline and test it on a minimal dataset with a single command:

```bash
nextflow run dalmolingroup/bulkrna -profile test,YOURPROFILE --outdir <OUTDIR>
```
```bash
nextflow run dalmolingroup/bulkrna -profile test,YOURPROFILE --outdir <OUTDIR>
```

For example, run the test with Docker:

```bash
nextflow run dalmolingroup/bulkrna -profile test,docker --outdir bulkrna_results
```
```bash
nextflow run dalmolingroup/bulkrna -profile test,docker --outdir bulkrna_results
```

Note that some form of configuration will be needed so that Nextflow knows how to fetch the required software. This is usually done in the form of a config profile (`YOURPROFILE` in the example command above). You can chain multiple config profiles in a comma-separated string.
Note that some form of configuration will be needed so that Nextflow knows how to fetch the required software. This is usually done in the form of a config profile (`YOURPROFILE` in the example command above). You can chain multiple config profiles in a comma-separated string.

> - The pipeline comes with config profiles called `docker`, `singularity`, `podman`, `shifter`, `charliecloud` and `conda` which instruct the pipeline to use the named tool for software management. For example, `-profile test,docker`.
> - Please check [nf-core/configs](https://github.com/nf-core/configs#documentation) to see if a custom config file to run nf-core pipelines already exists for your Institute. If so, you can simply use `-profile <institute>` in your command. This will enable either `docker` or `singularity` and set the appropriate execution settings for your local compute environment.
> - If you are using `singularity`, please use the [`nf-core download`](https://nf-co.re/tools/#downloading-pipelines-for-offline-use) command to download images first, before running the pipeline. Setting the [`NXF_SINGULARITY_CACHEDIR` or `singularity.cacheDir`](https://www.nextflow.io/docs/latest/singularity.html?#singularity-docker-hub) Nextflow options enables you to store and re-use the images from a central location for future pipeline runs.
> - If you are using `conda`, it is highly recommended to use the [`NXF_CONDA_CACHEDIR` or `conda.cacheDir`](https://www.nextflow.io/docs/latest/conda.html) settings to store the environments in a central location for future pipeline runs.
- The pipeline comes with config profiles called `docker`, `singularity`, `podman`, `shifter`, `charliecloud` and `conda` which instruct the pipeline to use the named tool for software management. For example, `-profile test,docker`.
- Please check [nf-core/configs](https://github.com/nf-core/configs#documentation) to see if a custom config file to run nf-core pipelines already exists for your Institute. If so, you can simply use `-profile <institute>` in your command. This will enable either `docker` or `singularity` and set the appropriate execution settings for your local compute environment.
- If you are using `singularity`, please use the [`nf-core download`](https://nf-co.re/tools/#downloading-pipelines-for-offline-use) command to download images first, before running the pipeline. Setting the [`NXF_SINGULARITY_CACHEDIR` or `singularity.cacheDir`](https://www.nextflow.io/docs/latest/singularity.html?#singularity-docker-hub) Nextflow options enables you to store and re-use the images from a central location for future pipeline runs.
- If you are using `conda`, it is highly recommended to use the [`NXF_CONDA_CACHEDIR` or `conda.cacheDir`](https://www.nextflow.io/docs/latest/conda.html) settings to store the environments in a central location for future pipeline runs.

4. Start running your own analysis!

<!-- TODO nf-core: Update the example "typical command" below used to run the pipeline -->
```bash
nextflow run dalmolingroup/bulkrna --input samplesheet.csv --outdir <OUTDIR> --transcriptome <PATH TO TRANSCRIPTOME FASTA> --gtf <PATH TO GTF FILE> -profile <docker/singularity/podman/shifter/charliecloud/conda/institute>
```

```bash
nextflow run dalmolingroup/bulkrna --input samplesheet.csv --outdir <OUTDIR> --transcriptome <PATH TO TRANSCRIPTOME FASTA> --gtf <PATH TO GTF FILE> -profile <docker/singularity/podman/shifter/charliecloud/conda/institute>
```
## References

To acquire reference transcriptome and GTF files to use in your execution,
we recommend using the [Ensembl](https://www.ensembl.org/index.html) database.

## Credits

Expand All @@ -68,8 +71,6 @@ If you would like to contribute to this pipeline, please see the [contributing g
<!-- TODO nf-core: Add citation for pipeline after first release. Uncomment lines below and update Zenodo doi and badge at the top of this file. -->
<!-- If you use dalmolingroup/bulkrna for your analysis, please cite it using the following doi: [10.5281/zenodo.XXXXXX](https://doi.org/10.5281/zenodo.XXXXXX) -->

<!-- TODO nf-core: Add bibliography of tools and data used in your pipeline -->

An extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file.

This pipeline uses code and infrastructure developed and maintained by the [nf-core](https://nf-co.re) community, reused here under the [MIT license](https://github.com/nf-core/tools/blob/master/LICENSE).
Expand Down
1 change: 1 addition & 0 deletions docs/CITATIONS.md
8 changes: 0 additions & 8 deletions docs/README.md

This file was deleted.

1 change: 1 addition & 0 deletions docs/README.md
Binary file added docs/assets/BulkRNA_dark.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/BulkRNA_light.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
89 changes: 89 additions & 0 deletions docs/params.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
# dalmolingroup/bulkrna pipeline parameters

Workflow for pre-processing, alignment and quantification of bulk RNA-Seq data

## Input/output options

Define where the pipeline should find input data and save output data.

| Parameter | Description | Type | Default |
|-----------|-----------|-----------|-----------|
| `input` | Path to comma-separated file containing information about the samples in the experiment. <details><summary>Help</summary><small>You will need to create a design file with information about the samples in your experiment before running the pipeline. Use this parameter to specify its location. It has to be a comma-separated file with 3 columns, and a header row.</small></details>| `string` | |
| `outdir` | The output directory where the results will be saved. You have to use absolute paths to storage on Cloud infrastructure. | `string` | |
| `email` | Email address for completion summary. <details><summary>Help</summary><small>Set this parameter to your e-mail address to get a summary e-mail with details of the run sent to you when the workflow exits. If set in your user config file (`~/.nextflow/config`) then you don't need to specify this on the command line for every run.</small></details>| `string` | |
| `multiqc_title` | MultiQC report title. Printed as page header, used for filename if not otherwise specified. | `string` | |

## FastP trimming options

Define fastp parameters for trimming

| Parameter | Description | Type | Default |
|-----------|-----------|-----------|-----------|
| `reads_minlength` | reads shorter than length_required will be discarded | `integer` | 15 |
| `fastp_adapter_fasta` | specify a FASTA file to trim both read1 and read2 (if PE) by all the sequences in this FASTA file | `string` | https://gist.githubusercontent.com/jvfe/2d569adf47791b9d1e1b4ff810d410b8/raw/e970485d7fe2c9a5b501966eb26e9eb51789c86d/sample_adapters.fa |
| `fastp_save_trimmed_fail` | save reads that cannot pass the filters | `boolean` | |
| `fastp_save_merged` | for paired-end input, merge each pair of reads into a single read if they are overlapped | `boolean` | |
| `fastp_qualified_quality` | the quality value that a base is qualified | `integer` | 15 |
| `fastp_cut_mean_quality` | the mean quality requirement option shared by the cut_front and cut_tail sliding windows | `integer` | 15 |

## Kallisto options

Options for the alignment/quantification

| Parameter | Description | Type | Default |
|-----------|-----------|-----------|-----------|
| `transcriptome` | Path to the transcriptome FASTA file to use for reference | `string` | None |
| `index` | | `string` | None |
| `fragment_length` | Estimated average fragment length | `integer` | 100 |
| `fragment_length_sd` | Estimated standard deviation of fragment length | `integer` | 1 |

## TXimport options

Options for importing Kallisto results into a count matrix

| Parameter | Description | Type | Default |
|-----------|-----------|-----------|-----------|
| `gtf` | | `string` | None |

## Institutional config options

Parameters used to describe centralised config profiles. These should not be edited.

| Parameter | Description | Type | Default |
|-----------|-----------|-----------|-----------|
| `custom_config_version` | Git commit id for Institutional configs. | `string` | master |
| `custom_config_base` | Base directory for Institutional configs. <details><summary>Help</summary><small>If you're running offline, Nextflow will not be able to fetch the institutional config files from the internet. If you don't need them, then this is not a problem. If you do need them, you should download the files from the repo and tell Nextflow where to find them with this parameter.</small></details>| `string` | https://raw.githubusercontent.com/nf-core/configs/master |
| `config_profile_name` | Institutional config name. | `string` | |
| `config_profile_description` | Institutional config description. | `string` | |
| `config_profile_contact` | Institutional config contact information. | `string` | |
| `config_profile_url` | Institutional config URL link. | `string` | |

## Max job request options

Set the top limit for requested resources for any single job.

| Parameter | Description | Type | Default |
|-----------|-----------|-----------|-----------|
| `max_cpus` | Maximum number of CPUs that can be requested for any single job. <details><summary>Help</summary><small>Use to set an upper-limit for the CPU requirement for each process. Should be an integer e.g. `--max_cpus 1`</small></details>| `integer` | 16 |
| `max_memory` | Maximum amount of memory that can be requested for any single job. <details><summary>Help</summary><small>Use to set an upper-limit for the memory requirement for each process. Should be a string in the format integer-unit e.g. `--max_memory '8.GB'`</small></details>| `string` | 128.GB |
| `max_time` | Maximum amount of time that can be requested for any single job. <details><summary>Help</summary><small>Use to set an upper-limit for the time requirement for each process. Should be a string in the format integer-unit e.g. `--max_time '2.h'`</small></details>| `string` | 240.h |

## Generic options

Less common options for the pipeline, typically set in a config file.

| Parameter | Description | Type | Default |
|-----------|-----------|-----------|-----------|
| `help` | Display help text. | `boolean` | |
| `publish_dir_mode` | Method used to save pipeline results to output directory. <details><summary>Help</summary><small>The Nextflow `publishDir` option specifies which intermediate files should be saved to the output directory. This option tells the pipeline what method should be used to move these files. See [Nextflow docs](https://www.nextflow.io/docs/latest/process.html#publishdir) for details.</small></details>| `string` | copy |
| `email_on_fail` | Email address for completion summary, only when pipeline fails. <details><summary>Help</summary><small>An email address to send a summary email to when the pipeline is completed - ONLY sent if the pipeline does not exit successfully.</small></details>| `string` | |
| `plaintext_email` | Send plain-text email instead of HTML. | `boolean` | |
| `max_multiqc_email_size` | File size limit when attaching MultiQC reports to summary emails. | `string` | 25.MB |
| `monochrome_logs` | Do not use coloured log outputs. | `boolean` | |
| `hook_url` | Incoming hook URL for messaging service <details><summary>Help</summary><small>Incoming hook URL for messaging service. Currently, only MS Teams is supported.</small></details>| `string` | |
| `multiqc_config` | Custom config file to supply to MultiQC. | `string` | |
| `multiqc_logo` | Custom logo file to supply to MultiQC. File name must also be set in the MultiQC config file | `string` | |
| `multiqc_methods_description` | Custom MultiQC yaml file containing HTML including a methods description. | `string` | |
| `tracedir` | Directory to keep pipeline Nextflow logs and reports. | `string` | ${params.outdir}/pipeline_info |
| `validate_params` | Boolean whether to validate parameters against the schema at runtime | `boolean` | True |
| `show_hidden_params` | Show all params when using `--help` <details><summary>Help</summary><small>By default, parameters set as _hidden_ in the schema are not shown on the command line when a user runs with `--help`. Specifying this option will tell the pipeline to show all parameters.</small></details>| `boolean` | |
16 changes: 16 additions & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
site_name: BulkRNA
site_description: Pre-processing, alignment and quantification of bulk RNA-seq data
site_author: Dalmolin Group
nav:
- Home: README.md
- Usage: usage.md
- Output: output.md
- Citations: CITATIONS.md
- Reference:
- Parameters: params.md
repo_url: https://github.com/dalmolingroup/bulkrna
theme:
name: "readthedocs"
logo: assets/BulkRNA_light.png
plugins:
- search
Loading