{"id":18289630,"url":"https://github.com/neherlab/pangraph","last_synced_at":"2025-04-04T13:14:01.379Z","repository":{"id":42631800,"uuid":"275563762","full_name":"neherlab/pangraph","owner":"neherlab","description":"A bioinformatic toolkit to align genome assemblies into pangenome graphs","archived":false,"fork":false,"pushed_at":"2025-03-27T15:47:53.000Z","size":79409,"stargazers_count":101,"open_issues_count":13,"forks_count":7,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-27T16:41:45.006Z","etag":null,"topics":["bacteria","bioinformatics","genome","genome-assembly","julia","pangenome","pangraph"],"latest_commit_sha":null,"homepage":"https://docs.pangraph.org","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/neherlab.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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,"publiccode":null,"codemeta":null}},"created_at":"2020-06-28T10:46:15.000Z","updated_at":"2025-03-20T21:44:55.000Z","dependencies_parsed_at":"2023-02-09T03:01:11.826Z","dependency_job_id":"6755f273-0865-4eca-855d-1a07a959c127","html_url":"https://github.com/neherlab/pangraph","commit_stats":null,"previous_names":[],"tags_count":30,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neherlab%2Fpangraph","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neherlab%2Fpangraph/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neherlab%2Fpangraph/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neherlab%2Fpangraph/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neherlab","download_url":"https://codeload.github.com/neherlab/pangraph/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247174461,"owners_count":20896078,"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":["bacteria","bioinformatics","genome","genome-assembly","julia","pangenome","pangraph"],"created_at":"2024-11-05T14:07:20.861Z","updated_at":"2025-04-04T13:14:01.357Z","avatar_url":"https://github.com/neherlab.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PanGraph\n\n[![Documentation](https://img.shields.io/badge/Documentation-Link-blue.svg)](https://docs.pangraph.org/)\n![Docker Image Version (latest semver)](https://img.shields.io/docker/v/neherlab/pangraph?label=docker)\n![Docker Pulls](https://img.shields.io/docker/pulls/neherlab/pangraph)\n\n\u003e a bioinformatic toolkit to align large sets of closely related genomes into a graph data structure\n\n\u003e [!WARNING]\n\u003e Pangraph is currently undergoing a major migration between v0 and v1. In this short transition period links and documentation may be inconsistent.\n\n## Overview\n\n**pangraph** provides a command line interface to find homology amongst large collections of closely related genomes.\nThe core of the algorithm partitions each genome into _blocks_ that represent a sequence interval related by vertical descent.\nEach genome is then an ordered walk along _blocks_. The collection of all genomes form a graph that captures all observed structural diversity.\n**pangraph** is a standalone tool useful to parsimoniously infer horizontal gene transfer events within a community; perform comparative studies of genome gain, loss, and rearrangement dynamics; or simply to compress many related genomes.\n\nThe original implementation of pangraph (version v0) was implemented in Julia and was described in the publication [Noll, Molari, Shaw and Neher, 2023](https://www.microbiologyresearch.org/content/journal/mgen/10.1099/mgen.0.001034).\nThe current version (v1) is a reimplementation of the original algorithm in Rust by Ivan Aksamentov and Marco Molari.\nThe new implementation should be much easier to install and is faster in many use cases.\n\n## Installation\n\nPangraph is available:\n- as a **standalone binary**\n- as a **docker container**\n\nFor more extended instructions on installation please refer to the [documentation](https://docs.pangraph.org/category/installation).\n\n### Standalone binary\n\nThis is the recommended way to install Pangraph. You can download the latest release for your operating system [from here](https://docs.pangraph.org/installation/standalone).\n\n### Docker container\n\nPanGraph is available as a Docker container:\n\n```bash\ndocker pull neherlab/pangraph:latest\n```\n\nSee the [documentation](https://docs.pangraph.org/installation/with-docker) for extended instructions on its usage.\n\n\n## Examples\n\nPlease refer to the [tutorials within the documentation](https://docs.pangraph.org/category/tutorial) for an in-depth usage guide.\nFor a quick reference, see below.\n\nAlign a multi-fasta `sequences.fa` in a graph:\n```bash\npangraph build sequences.fa -o graph.json\n```\n\nExtract the core-genome alignment from the graph, with blocks appearing in the order of the reference genome `NC_010468`:\n```bash\npangraph export core-genome graph.json \\\n  --guide-strain NC_010468 \\\n  -o core_genome_aln.fa\n```\n\nExport the graph in gfa format for visualization:\n```bash\npangraph export gfa graph.json -o graph.gfa\n```\n\nReconstruct input sequences from the graph:\n```bash\npangraph reconstruct graph.json -o sequences.fa\n```\n\n## PyPangraph\n\nPyPangraph is a python package with convenient utilities to load and explore the graph data structure, see the [documentation](https://docs.pangraph.org/pypangraph/about-pypangraph) for installation instructions and more examples.\n\n```python\nimport pypangraph as pp\n\ngraph = pp.Pangraph.load_graph(\"graph.json\")\nprint(graph)\n# pangraph object with 15 paths, 137 blocks and 1042 nodes\n```\n\n\n## Citation\nIf you use PanGraph in scientific publications, please cite the original paper presenting the algorithm:\n\n*PanGraph: scalable bacterial pan-genome graph construction*\nNicholas Noll, Marco Molari, Liam P. Shaw, Richard A. Neher\nMicrobial Genomics, **9**(6), 2023; doi: [10.1099/mgen.0.001034](https://doi.org/10.1099/mgen.0.001034)\n\n\n## License\n\n[MIT License](LICENSE)\n\n\u003e [!NOTE]\n\u003e The legacy v0 version of Pangraph is now stored on the [`v0` branch](https://github.com/neherlab/pangraph/tree/v0) of the repository, and legacy documentation is available [here](https://v0.docs.pangraph.org/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneherlab%2Fpangraph","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneherlab%2Fpangraph","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneherlab%2Fpangraph/lists"}