Metadata-Version: 2.3
Name: sequana-lora
Version: 1.0.1
Summary: Run assembler (Canu, Flye, Hifiasm) on a set of long read files
License: BSD-3
Keywords: pacbio,nanopore,snakemake,sequana,assembly
Author: Sequana Team
Author-email: thomas.cokelaer@pasteur.fr
Requires-Python: >=3.9,<4.0
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Classifier: Topic :: Scientific/Engineering :: Information Analysis
Requires-Dist: Jinja2 (>=3.1.2)
Requires-Dist: beautifulsoup4
Requires-Dist: click (>=8.1.7)
Requires-Dist: click-completion (>=0.5.2)
Requires-Dist: pandas (>=2.0.0)
Requires-Dist: sequana-pipetools (>=1.3.0)
Description-Content-Type: text/x-rst

This is is the **lora** pipeline from the `Sequana <https://sequana.readthedocs.org>`_ project

:Overview: Run assembler (Canu, flye, hifiasm) on a set of long read files
:Input: A set of BAM files from Pacbio sequencers, or FastQ files for Nanopore sequencers.
:Output: HTML reports with assemblies for each sample.
:Status: prod
:Citation: Cokelaer et al, (2017), ‘Sequana’: a Set of Snakemake NGS pipelines, Journal of Open Source Software, 2(16), 352, JOSS DOI doi:10.21105/joss.00352


Installation
~~~~~~~~~~~~

Install Lora with pip command::

    pip install sequana-lora

To update your installed version, type::

    pip install sequana-lora --upgrade

Usage
~~~~~

::

    sequana_lora --help
    sequana_lora --input-directory DATAPATH --assembler flye

This creates a directory with the pipeline and configuration file. You will then need
to execute the pipeline::

    cd lora
    sh lora.sh  # for a local run

This launch a snakemake pipeline. If you are familiar with snakemake, you can
retrieve the pipeline itself and its configuration files and then execute the pipeline yourself with specific parameters::

    snakemake -s lora.rules --cores 4 --stats stats.txt

Or use `sequanix <https://sequana.readthedocs.io/en/master/sequanix.html>`_ interface.


Example 1 Pacbio - HiFi data
----------------------------

With HiFi data, set the data-type to pacbio-hifi. We recommend flye that is quite fast with HiFi data.
No need to install third-party software if you use the --apptainer-prefix. It will download required files once for all.
--do-coverage is optional but recommended to check the quality of the final contigs and their coverage.

::

    sequana_lora \
        --input-directory FILLME \
        --data-type pacbio-hifi \
        --assembler flye \
        --apptainer-prefix A_DIRECTORY_TO_STORE_CONTAINERS \
        --do-coverage  \
        --genome-size 35m


Example 1 Pacbio subreads
~~~~~~~~~~~~~~~~~~~~~~~~~~~

::

    sequana_lora --input-directory . --pacbio
    cd lora

**Do you need to build CCS ?**

Look at the config file and the CCS section. Check that the parameters are as expected.
If you wish to build so-called HiFi reads, set the min-passes to 10 and min-rq to 0.99.

**do you have a blast DB**

You may also edit the config file to set blast to true (you must handle the blast databases yourself)

**Do you need an annotation from your contigs?**

Set prokka to True (for bacterial annotation)

**Want to check the core genome?**

You may set busco to true to detect the core genome (you must provide a path to a valid lineage).


Requirements
~~~~~~~~~~~~

This pipelines requires the following executable(s):

- canu
- hifiasm
- flye
- blastn
- busco
- bwa
- ccs
- circlator
- checkm
- medaka
- minimap2
- pbindex
- polypolish
- prokka
- samtools
- sequana


.. image:: https://raw.githubusercontent.com/sequana/lora/master/sequana_pipelines/lora/dag.png


Details
~~~~~~~~~

This pipeline runs **lora** in parallel on the input fastq files (paired or not).
A brief sequana summary report is also produced.

In practice, you may start from BAM files generated by Pacbio sequencers or
Fastq files, or CCS files. CCS files can be built by the pipeline. Then, an
assembler is used to build the draft assemblies (Canu, hifiasm, etc). From the
draft, circularisation may be applied to generate circularised genome (useful
for bacterial genomes). Finally, each contig is blasted and quality checks are
performed using Busco, quast, etc.


Rules and configuration details
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Here is the `latest documented configuration file <https://raw.githubusercontent.com/sequana/sequana_lora/master/sequana_pipelines/lora/config.yaml>`_
to be used with the pipeline. Each rule used in the pipeline may have a section in the configuration file.

Changelog
~~~~~~~~~

========= ====================================================================
Version   Description
========= ====================================================================
1.0.0     * uniformised extension with other pipelines. fix regression on
            schema file
          * update sequana container to v0.16.5
          * add unicyler apptainer
          * add checkm module to help users chosing correct marker and name.
          * replaces --pacbio and --nanopore with --data-type. pacbio is now
            decompose into 3 sub-categories: pacbio-raw, pacbio-hifi and pacbio-corr
          * add bandage if assembly graph is available
          * fixed hifiasm container to use newest version
          * improved report html
          * make genome-size compulsary
          * add fastp as preprocessing tool
          * remove presets in favor of click options
          * CCS defaults to hifi. pacbio presets in config set to pacbio-hifi
          * blast removes from default. users must set blast DB themselves.
          * busco lineage downloaded from the web.
          * CANU preset changes: pacbio-->pacbio-hifi
          * CANU-correction preset changes: pacbio-->pacbio-hifi
          * FLYE preset changes: pacbio-raw-->pacbio-hifi
0.3.0     * Use click instead of argparse
          * added multiqc / checkm / unicycler
0.2.0     * add apptainers in most rules
          * remove utils.smk to move rulegraph inside main pipeline
          * rename lora.smk into lora.rules for consistency with other
            pipelines
          * add checkm in the pipeline and HTML report
0.1.0     **First release.**
========= ====================================================================

