Skip to main content

No project description provided

Project description

Snk

PyPI - Version PyPI - Python Version write-the - docs Hits status


Documentation: https://snk.wytamma.com

Source Code: https://github.com/Wytamma/snk


Snk (pronounced snek) is a Snakemake workflow management system. Snk allows you to install Snakemake workflows as dynamically generated Command Line Interfaces (via snk-cli). Using a workflow as a CLI increases its interoperability and allows complex workflows to be used as modular components in a larger system.

Installation

From bioconda:

conda create -n snk bioconda::snk

From PyPI:

pip install snk

Basic Use

Install a workflow as a CLI

The snk install command can be use to install Snakemake workflows as CLIs. Snk can install Snakemake workflows from GitHub repos or local paths.

snk install wytamma/snk-basic-pipeline

Successfully installed snk-basic-pipeline (ff034f1b)!

The snk install command is flexible and can be used to install diverse workflows. For example, the dna-seq-gatk-variant-calling workflow (v2.1.1) as variant-calling with Snakemake v8.10.8 and Pandas and NumPy dependency. An index of publicly available Snakemake workflows can be found on the snakemake workflow catalog.

snk install \
  snakemake-workflows/dna-seq-gatk-variant-calling \
  --name variant-calling \
  --snakemake 8.10.8 \
  -d pandas==1.5.3 \
  -d numpy==1.26.4 \
  -t v2.1.1

Successfully installed variant-calling (v2.1.1)!

Manage Installed Workflows

You can list installed workflows with snk list and uninstall them with snk uninstall.

snk list
Workflow Version
snk-basic-pipeline ff034f1b
variant-calling v2.1.1
snk uninstall snk-basic-pipeline

Successfully uninstalled snk-basic-pipeline!

Inspect the CLI

Snk will automatically create a fully featured CLI for the Snakemake workflow using snk-cli.

[!note] For more details on the CLI created by snk read the snk-cli docs

variant-calling --help
cli help

View run options

Workflow configuration options are automatically generated from the snakemake config file.

variant-calling run --help
run cli help

Create a DAG

Here we use the .test resources included in the workflow to create the DAG (requires graphviz).

variant-calling run -r .test/config -r .test/data --dag dag.pdf
run cli help

Configure

Snk will dynamically generate config options for the CLI. For example if the config.yaml file has the option samples: config/samples.tsv you can set this option with the --samples flag.

variant-calling run --samples new.tsv

You can also configure the workflow using a config file.

variant-calling config --pretty # print the config 
variant-calling config > config.yml # save the config 
variant-calling run --config config.yml # run with config 

Documentation

Read the documentation for more information.

License

snk is distributed under the terms of the MIT license.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

snk-0.31.0.tar.gz (562.3 kB view details)

Uploaded Source

Built Distribution

snk-0.31.0-py3-none-any.whl (14.8 kB view details)

Uploaded Python 3

File details

Details for the file snk-0.31.0.tar.gz.

File metadata

  • Download URL: snk-0.31.0.tar.gz
  • Upload date:
  • Size: 562.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.27.2

File hashes

Hashes for snk-0.31.0.tar.gz
Algorithm Hash digest
SHA256 5190498c3a5e7969fbd11f1c10b401a1ade314e3737858f23bc72ac20ea655e5
MD5 31586c4d0ac3bc0766f4f0731ff3024a
BLAKE2b-256 db3a9c42de77c522f6cde13feed347ff53e822427f6de1126ea0f436d9d4ae33

See more details on using hashes here.

File details

Details for the file snk-0.31.0-py3-none-any.whl.

File metadata

  • Download URL: snk-0.31.0-py3-none-any.whl
  • Upload date:
  • Size: 14.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.27.2

File hashes

Hashes for snk-0.31.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1afd32f1473fae9e7ab3cedc1243109a4662305eb6a5a404abfcd69729d8cc49
MD5 0000019798eec3a2b9b927401fc8b308
BLAKE2b-256 361b65991e199d1e81ccc5f5f45121ebb2339fee48fecdb5162ecfc0776a51d2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page