Skip to content
Closed
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
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# SCM syntax highlighting & preventing 3-way merges
pixi.lock merge=binary linguist-language=YAML linguist-generated=true -diff
15 changes: 3 additions & 12 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,12 +1,3 @@
results/**
resources/**
logs/**
.snakemake
.snakemake/**
.test/results/*
workflow/notebooks/.ipynb_checkpoints/**
**/.Rhistory
**/*.Rproj
**/.Rproj.user/**
**/.RData
**/Rplots.pdf
# pixi environments
.pixi/*
!.pixi/config.toml
9 changes: 1 addition & 8 deletions .test/config/config.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1 @@
sample_sheet: "config/samples.tsv"

get_genome:
ncbi_ftp: https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/000/146/045/GCF_000146045.2_R64/GCF_000146045.2_R64_genomic.fna.gz

simulate_reads:
read_length: 100
read_number: 10000
input_file: "data/input.txt"
8 changes: 0 additions & 8 deletions config/config.yaml

This file was deleted.

46 changes: 46 additions & 0 deletions copier.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
project_name:
type: str
help: What is your project name?

features:
type: str
help: Which of these features are you interested in?
choices:
- isolated conda environments
- Jupyter Notebook Integration
- Report Generation
- Schema Validation

# plugins:
# type: str
# help: Which of these features are you interested in?
# choices:
# - Schema Validation
# - Jupyter Notebook Integration
# - Report Generation
# -

# scripts:
# type:
# help: What kind of scripts are you planning to use?
# choices:
# - notebooks
# - R
# - python
# multiselect: true

# isolation:
# type:
# help: What container?
# choices:
# - pixi
# - conda
# - apptainer/singularity

# profiles:
# type: boolean
# help: Would you like to set up a default profile?

# orcid:
# type: boolean
# help: Would you like to link this workflow to an ORCID ID?
7 changes: 0 additions & 7 deletions workflow/envs/simulate_reads.yaml

This file was deleted.

8 changes: 0 additions & 8 deletions workflow/envs/validate_genome.yaml

This file was deleted.

16 changes: 0 additions & 16 deletions workflow/rules/common.smk

This file was deleted.

112 changes: 0 additions & 112 deletions workflow/rules/process_reads.smk

This file was deleted.

25 changes: 0 additions & 25 deletions workflow/schemas/samples.schema.yaml

This file was deleted.

24 changes: 0 additions & 24 deletions workflow/scripts/validate_fasta.py

This file was deleted.

12 changes: 12 additions & 0 deletions {{ project_name }}/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
results/**
resources/**
logs/**
.snakemake
.snakemake/**
.test/results/*
workflow/notebooks/.ipynb_checkpoints/**
**/.Rhistory
**/*.Rproj
**/.Rproj.user/**
**/.RData
**/Rplots.pdf
File renamed without changes.
18 changes: 10 additions & 8 deletions README.md → {{ project_name }}/README.md.jinja
Original file line number Diff line number Diff line change
@@ -1,13 +1,17 @@
# Snakemake workflow: `<name>`
# Snakemake workflow: `{{ project_name }}`

[![Snakemake](https://img.shields.io/badge/snakemake-≥8.0.0-brightgreen.svg)](https://snakemake.github.io)
[![GitHub actions status](https://github.com/<owner>/<repo>/workflows/Tests/badge.svg?branch=main)](https://github.com/<owner>/<repo>/actions?query=branch%3Amain+workflow%3ATests)
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)
[![workflow catalog](https://img.shields.io/badge/Snakemake%20workflow%20catalog-darkgreen)](https://snakemake.github.io/snakemake-workflow-catalog/docs/workflows/<owner>/<repo>)

A Snakemake workflow for `<description>`

- [Snakemake workflow: `<name>`](#snakemake-workflow-name)
The workflow is built using [snakemake](https://snakemake.readthedocs.io/en/stable/) and consists of the following steps:

1. Describe
2. your
3. rules
4. here


- [Snakemake workflow: `{{ project_name }}`](#snakemake-workflow-{{ project_name }})
- [Usage](#usage)
- [Deployment options](#deployment-options)
- [Workflow profiles](#workflow-profiles)
Expand All @@ -17,8 +21,6 @@ A Snakemake workflow for `<description>`

## Usage

The usage of this workflow is described in the [Snakemake Workflow Catalog](https://snakemake.github.io/snakemake-workflow-catalog/docs/workflows/<owner>/<repo>).

Detailed information about input data and workflow configuration can also be found in the [`config/README.md`](config/README.md).

If you use this workflow in a paper, don't forget to give credits to the authors by citing the URL of this repository or its DOI.
Expand Down
5 changes: 0 additions & 5 deletions config/README.md → {{ project_name }}/config/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,5 @@ This table lists all parameters that can be used to run the workflow.

| parameter | type | details | default |
| ------------------ | ---- | ------------------------------------- | ------------------------------ |
| **sample_sheet** | | | |
| path | str | path to sample sheet, mandatory | "config/samples.tsv" |
| **get_genome** | | | |
| ncbi_ftp | str | link to a genome on NCBI's FTP server | link to _S. cerevisiae_ genome |
| **simulate_reads** | | | |
| read_length | num | length of target reads in bp | 100 |
| read_number | num | number of total reads to be simulated | 10000 |
Empty file.
19 changes: 19 additions & 0 deletions {{ project_name }}/data/config.yaml.jinja
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
### GENERAL SNAKEMAKE SETTINGS

# Tell snakemake which remote executor plugin to use, in our case the plugin
# for the cluster system LSF, which is documented here:
# https://snakemake.github.io/snakemake-plugin-catalog/plugins/executor/lsf.html
# executor: "lsf"

# Maximum number of cluster cores / cpus to schedule jobs for.
#
cores: { { max_cores } }

# Always use conda environments for software deployment. Internally snakemake
# implicitly uses mamba for speed (at the time of writing).
software-deployment-method: { { sdm } }

default-resources:
# The default amount of memory that is reserved for a rule, if the rule (and
# the snakemake command) don't specify anything else.
mem_mb: 4000
1 change: 1 addition & 0 deletions {{ project_name }}/data/input.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Hello from Snakemake!
File renamed without changes.
8 changes: 2 additions & 6 deletions workflow/Snakefile → {{ project_name }}/workflow/Snakefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,19 @@
# -----------------------------------------------------
configfile: "config/config.yaml"


# load rules
# -----------------------------------------------------
include: "rules/common.smk"
include: "rules/process_reads.smk"
include: "rules/example.smk"


# optional messages, log and error handling
# -----------------------------------------------------
onstart:
print("\n--- Analysis started ---\n")


onsuccess:
print("\n--- Workflow finished! ---\n")


onerror:
print("\n--- An error occurred! ---\n")

Expand All @@ -33,5 +29,5 @@ onerror:
# -----------------------------------------------------
rule all:
input:
"results/multiqc/multiqc_report.html",
"results/output.txt"
default_target: True
Loading
Loading