{"id":18448418,"url":"https://github.com/nextomics/nextsv","last_synced_at":"2025-10-23T20:38:55.586Z","repository":{"id":91483789,"uuid":"75591889","full_name":"Nextomics/nextsv","owner":"Nextomics","description":null,"archived":false,"fork":false,"pushed_at":"2024-04-13T19:26:10.000Z","size":69588,"stargazers_count":32,"open_issues_count":8,"forks_count":8,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-04-14T09:52:37.613Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Nextomics.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2016-12-05T05:30:05.000Z","updated_at":"2024-01-23T03:19:53.000Z","dependencies_parsed_at":null,"dependency_job_id":"da50a80e-35ad-4e28-8b0c-3f01b8aaec5e","html_url":"https://github.com/Nextomics/nextsv","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nextomics%2Fnextsv","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nextomics%2Fnextsv/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nextomics%2Fnextsv/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nextomics%2Fnextsv/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nextomics","download_url":"https://codeload.github.com/Nextomics/nextsv/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223296982,"owners_count":17121977,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-06T07:15:50.258Z","updated_at":"2025-10-23T20:38:50.537Z","avatar_url":"https://github.com/Nextomics.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NextSV3: automated structrual variation detection from long-read sequencing using state-of-the-art tools\n\nNextSV3 uses [Minimap2](https://github.com/lh3/minimap2)/[Winnowmap](https://github.com/marbl/Winnowmap)/[NGMLR](https://github.com/philres/ngmlr) to do read mapping and uses two state-of-the-art SV callers ([Sniffles2](https://github.com/fritzsedlazeck/Sniffles) and [cuteSV2](https://github.com/tjiangHIT/cuteSV)) to do SV calling.\n\n## Table of Contents\n\n- [Table of Contents](#table-of-contents)\n- [Installation](#installation)\n- [Usage](#usage)\n  - [Aligners](#aligners)\n  - [Quick Example](#quick-example)\n  - [Output files](#output-files)\n  - [Full Usage](#full-usage)\n- [Contact](#contact)\n- [Citation](#citation)\n- [Included tools](#open-source-software-tools-included-in-this-repository)\n\n## Installation\n\n**Prerequisites**\n- Operating System: Linux\n- Python 3.8 or later\n- [samtools](https://github.com/samtools/samtools) (v1.9 or later)\n- [sniffles](https://github.com/fritzsedlazeck/Sniffles) (v2.0.7 or later)\n- [cuteSV](https://github.com/tjiangHIT/cuteSV) (v2.0.1 or later)\n\nConda environment is not required but we highly recommend you install the prerequisites in a new conda environment to avoid potential dependency issues. \n\n```\nconda create -n nextsv3 python=3.8\nconda activate nextsv3\npip install \"setuptools\u003c58.0\"\npip install sniffles\npip install cuteSV\n```\n\n**Installation of NextSV3**\n\nIf your OS is Linux, you can acquire precompiled binaries from the [release page](https://github.com/Nextomics/nextsv/releases) with:\n\n```\nwget https://github.com/Nextomics/nextsv/releases/download/v3.2.0/NextSV-3.2.0-linux-x86_64.tar.gz\ntar xzf NextSV-3.2.0-linux-x86_64.tar.gz\n```\n\nIf you want to compile from the source code, you need to have the following tools/libraries installed:\n- GCC (v7.0 or later)\n- GNU make\n- CMake\n- zlib development files \n\n**You may encounter problems during the compilation process if your operating system is missing any of the above tools/libraries,  and we strongly recommend using our pre-compiled binaries if your operating system is Linux.**\n\nTo compile NextSV from source: \n```\ngit clone https://github.com/Nextomics/nextsv.git\ncd nextsv\nmake\n```\n\n## Usage\n\n### Aligners\n\nThe default aligner is `minimap2` as it is faster. But you can use the `-a`/`--aligners` argument to specifiy aligners. \nYou can use any combination of the following 3 aligners: `minimap2`, `winnowmap`, `ngmlr` (separated by the `+` sign):\n\n```\n# use minimap2 only (default) \n-a minimap2\n\n# use minimap2 and winnowmap\n-a minimap2+winnowmap\n\n# use minimap2, winnowmap and ngmlr\n-a minimap2+winnowmap+ngmlr\n\n# use winnowmap and ngmlr\n-a winnowmap+ngmlr\n\n# use minimap2 and ngmlr\n-a minimap2+ngmlr\n\n# use ngmlr only\n-a ngmlr\n\n# use minimap2 only\n-a minimap2\n```\n\nPlease note that if you use more aligners, it would take more time to finish the pipeline.\n\n### Quick Example\n\n```\n# PacBio HiFi reads\npython path/to/nextsv3.py -a minimap2+winnowmap+ngmlr -i path/to/fastq/folder/ -o ./nextsv_output -s unique_sample_name -r path/to/hg38.fasta -t 8 -p hifi -e nextsv3\n\n# PacBio CLR reads\npython path/to/nextsv3.py -a minimap2+winnowmap+ngmlr -i path/to/fastq/folder/ -o ./nextsv_output -s unique_sample_name -r path/to/hg38.fasta -t 8 -p clr -e nextsv3\n\n# Oxford Nanopore reads\npython path/to/nextsv3.py -a minimap2+winnowmap+ngmlr -i path/to/fastq/folder/ -o ./nextsv_output -s unique_sample_name -r path/to/hg38.fasta -t 8 -p ont -e nextsv3\n```\n\nMemory consumption of the pipeline depends on number of threads and the size of the reference genome. For human genomes (3Gb), we recommend 4GB memory per thread. \n\n### Output files\n\nNextSV will generate a `work.sh` in the output directory. Run this `work.sh` and you will get output files. SV calls of sniffles and cuteSV will be generated in the `out_dir/3_SV_calls` folder.\n\n### Full Usage\n```\nusage: nextsv3.py [-h] -i path/to/input_dir -o path/to/output_dir -s sample_name -r ref.fasta -p sequencing_platform -a aligners_to_use [-t INT]\n                  [-e conda_env] [--samtools path/to/samtools] [--sniffles path/to/sniffles] [--cuteSV path/to/cuteSV]\n                  [--minimap2 path/to/minimap2] [-v]\n\nnextsv3: an automated pipeline for structrual variation detection from long-read sequencing. Contact: Li Fang(fangli2718@gmail.com)\n\noptions:\n  -h, --help            show this help message and exit\n  -i path/to/input_dir, --in_dir path/to/input_dir\n                        (required) path to input FASTQ/FASTA directory (all fastq/fasta files in this directory will be used as input files)\n  -o path/to/output_dir, --out_dir path/to/output_dir\n                        (required) path to output fastq directory\n  -s sample_name, --sample_name sample_name\n                        (required) a unique name or id for the input sample\n  -r ref.fasta, --ref_fasta ref.fasta\n                        (required) path to reference genome sequence in FASTA format\n  -p sequencing_platform, --platform sequencing_platform\n                        (required) sequencing platform. Three valid values: ont/clr/hifi ont: oxford nanopore; clr: PacBio CLR; hifi: PacBio\n                        HiFi/CCS\n  -a aligners_to_use, --aligners aligners_to_use\n                        (optional) which aligner(s) to use. Three supported aligners: minimap2, ngmlr, winnowmap. Use \"+\" to combine multiple\n                        aligners. Examples: minimap2+ngmlr, winnowmap+minimap2, minimap2+ngmlr+winnowmap, minimap2, ngmlr, winnowmap\n  -t INT, --threads INT\n                        (optional) number of threads (default: 4)\n  -e conda_env, --conda_env conda_env\n                        (optional) conda environment name (default: NULL)\n  --samtools path/to/samtools\n                        (optional) path to samtools (default: using environment default)\n  --sniffles path/to/sniffles\n                        (optional) path to sniffles (default: using environment default)\n  --cuteSV path/to/cuteSV\n                        (optional) path to cuteSV (default: using environment default)\n  --minimap2 path/to/minimap2\n                        this parameter is deprecated as minimap2 is supplied in NextSV now\n  -v, --version         show version number and exit\n\n```\n\n\n## Contact\n\nIf you have any questions/suggestions, please feel free to post it on the [Issue page](https://github.com/Nextomics/nextsv/issues). You may also email me at `fangli80@foxmail.com`. \n\n## Citation\n\n### NextSV\nFang, L., Hu, J., Wang, D. et al. NextSV: a meta-caller for structural variants from low-coverage long-read sequencing data. BMC Bioinformatics 19, 180 (2018). https://doi.org/10.1186/s12859-018-2207-1\n\n### Minimap2\nLi, H. Minimap2: pairwise alignment for nucleotide sequences. Bioinformatics, 34:3094-3100 (2018). https://doi.org/10.1093/bioinformatics/bty191\n\n### Winnowmap\nJain, C., Rhie, A., Hansen, N.F., Koren, S., and Phillippy, A.M. (2022). Long-read mapping to repetitive reference sequences using Winnowmap2. Nat Methods 19, 705-710. https://doi.org/10.1038/s41592-022-01457-8\n\nJain, C., Rhie, A., Zhang, H., Chu, C., Walenz, B.P., Koren, S., and Phillippy, A.M. (2020). Weighted minimizer sampling improves long read mapping. Bioinformatics 36, i111-i118. https://doi.org/10.1093/bioinformatics/btaa435\n\n### NGMLR and Sniffles\nSedlazeck, F.J., Rescheneder, P., Smolka, M. et al. Accurate detection of complex structural variations using single-molecule sequencing. Nat Methods 15, 461–468 (2018). https://doi.org/10.1038/s41592-018-0001-7\n\nSmolka, M., Paulin, L.F., Grochowski, C.M., Mahmoud, M., Behera, S., Gandhi, M., Hong, K., Pehlivan, D., Scholz, S.W., Carvalho, C.M.B., et al. (2022). Comprehensive Structural Variant Detection: From Mosaic to Population-Level. bioRxiv. https://doi.org/10.1101/2022.04.04.487055 \n\n### CuteSV\nJiang, T., Liu, Y., Jiang, Y. et al. Long-read-based human genomic structural variation detection with cuteSV. Genome Biol 21, 189 (2020). https://doi.org/10.1186/s13059-020-02107-y\n\nCao, S., Jiang, T., Liu, Y., Liu, S., and Wang, Y. (2022). Re-genotyping structural variants through an accurate force-calling method. bioRxiv. https://doi.org/10.1101/2022.04.04.487055 \n\n### Samtools\nPetr Danecek, James K Bonfield, Jennifer Liddle, John Marshall, Valeriu Ohan, Martin O Pollard, Andrew Whitwham, Thomas Keane, Shane A McCarthy, Robert M Davies, Heng Li, Twelve years of SAMtools and BCFtools, GigaScience, Volume 10, Issue 2, February 2021, giab008, https://doi.org/10.1093/gigascience/giab008\n\n## Open source software tools included in this repository\n\nTo provide consistent output and better user experience, we included some open source software tools. \n\n**LongReadQC** https://github.com/fangli80/longreadqc\n\n**Seqtk**\nhttps://github.com/lh3/seqtk\n\n**Minimap2**\nhttps://github.com/lh3/minimap2\n\n**NGMLR**\nhttps://github.com/philres/ngmlr\n\n**pigz**\nhttps://github.com/madler/pigz\n\n**Winnowmap**\nhttps://github.com/marbl/Winnowmap\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnextomics%2Fnextsv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnextomics%2Fnextsv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnextomics%2Fnextsv/lists"}