https://github.com/theosanderson/taxonium
A tool for exploring large trees in the browser
https://github.com/theosanderson/taxonium
deckgl phylogenetics phylogeny react tree virus
Last synced: 7 months ago
JSON representation
A tool for exploring large trees in the browser
- Host: GitHub
- URL: https://github.com/theosanderson/taxonium
- Owner: theosanderson
- License: gpl-3.0
- Created: 2021-06-24T17:26:34.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2025-03-25T15:54:35.000Z (8 months ago)
- Last Synced: 2025-03-28T13:40:54.512Z (8 months ago)
- Topics: deckgl, phylogenetics, phylogeny, react, tree, virus
- Language: JavaScript
- Homepage: http://taxonium.org
- Size: 253 MB
- Stars: 108
- Watchers: 6
- Forks: 21
- Open Issues: 100
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Citation: CITATION.bib
Awesome Lists containing this project
README
# Taxonium
[](https://elifesciences.org/articles/82392) [](#contributors-)
Taxonium is a tool for exploring trees, including those with millions of nodes.
### [➡️ Launch Taxonium](https://taxonium.org)
### [📚 Consult the documentation](https://taxonium.readthedocs.io/en/latest/)
### [📝 Read the paper](https://elifesciences.org/articles/82392)
## How do I..
### visualise my own Newick phylogeny?
Upload a Newick file to [Taxonium.org](http://taxonium.org), and optionally a metadata file in CSV or TSV format. If using a metadata file the leftmost column must contain names of the nodes as in the tree.
### explore the global SARS-CoV-2 phylogeny?
Visit [Cov2Tree.org](http://Cov2Tree.org) which uses Taxonium to allow you to explore a tree built by [researchers at UCSC](http://hgdownload.soe.ucsc.edu/goldenPath/wuhCor1/UShER_SARS-CoV-2/) using public data contributed by researchers across the world to the INSDC databases.
### build my own mutation-annotated tree to explore in Taxonium, or add my own metadata to an existing phylogeny?
Use [UShER](https://github.com/yatisht/usher/) to build a mutation-annotated tree. Then use [taxoniumtools](./taxoniumtools/) to convert it to a Taxonium format you can upload to the interface at [Taxonium.org](Taxonium.org)
You can also use taxoniumtools to add your own metadata to [the existing public phylogeny](https://hgwdev.gi.ucsc.edu/~angie/UShER_SARS-CoV-2/).
Find out more in [📚 the documentation](https://taxonium.readthedocs.io/en/latest/).
### load really huge trees?
For trees larger than about 6M tips, loading local trees in the browser at Taxonium.org can be unreliable on some systems due to browser memory limitations. To avoid these issues, use the [Taxonium desktop app](https://docs.taxonium.org/en/latest/app.html).
### use Taxonium in my own web application?
Use the [Taxonium component](./taxonium_component).
## See Taxonium in action
- [Cov2Tree](https://cov2tree.org/) - (the repo that runs this is [here](https://github.com/theosanderson/cov2tree))
- [Exploring the NCBI Taxonomy](https://taxonium.org/?treeUrl=https%3A%2F%2Fcov2tree.nyc3.digitaloceanspaces.com%2Fncbi%2Ftree.nwk.gz&ladderizeTree=true&metaUrl=https%3A%2F%2Fcov2tree.nyc3.digitaloceanspaces.com%2Fncbi%2Fmetadata.tsv.gz&configUrl=https%3A%2F%2Fcov2tree.nyc3.digitaloceanspaces.com%2Fncbi%2Fconfig.json)
- [Serratus](https://serratus.io/trees) (click Tree Viewer on any tree)
## Citing Taxonium
```
Sanderson, T (2022). Taxonium, a web-based tool for exploring large phylogenetic trees. eLife, 11:e82392
https://doi.org/10.7554/eLife.82392
```
N.B. If you are citing the _tree_ displayed at Cov2Tree.org, please cite [the UCSC tree](https://pubmed.ncbi.nlm.nih.gov/34469548/) (.. and ideally Taxonium too if you relied on it for exploration)
There is a separate [paper](https://academic.oup.com/bioinformatics/article/39/1/btac772/6858450) for the Treenome Browser feature (Kramer et al., Bioinformatics, 2022).
## Structure
Taxonium is structured as a 'monorepo' containing a number of components:
- [taxoniumtools](./taxoniumtools/) - a Python package that lets you easily generate Taxonium files from Usher protobuf files
- [taxonium_component](./taxonium_component/) - a React component that implements the Taxonium tree explorer
- [taxonium_website](./taxonium_website/) - The Taxonium website found at [Taxonium.org](https://taxonium.org), a wrapper around taxonium_component
- [taxonium_backend](./taxonium_backend/) - a server-based backend that allows Taxonium trees to be explored without the user downloading the full tree (N.B. Taxonium can also be used without this backend, with static files acccessed in taxonium_website)
- [taxonium_data_handling](./taxonium_data_handling/) - this is a node package upon which both the web client and the backend depend (it handles core logic common to both)
## Contributing
We welcome [contributions](CONTRIBUTING.md). We require that that all contributors follow [the Contributor Covenant Code of Conduct](https://github.com/theosanderson/genomium/blob/main/CODE_OF_CONDUCT.md).
### Contributors
Taxonium development was initiated and is led by Theo Sanderson at the Francis Crick Institute.
We are very grateful to our contributors:

Alex Kramer
💻 🎨 🤔

Angie Hinrichs
🤔 🔣 💻

Richard Goater
🎨 💻

Chaoran Chen
🤔

Cornelius Roemer
🤔

Sung Kwon
🚇

Koorous Vargha
💻
[Alex Kramer](https://corbett-lab.github.io/People/Current/alex/) at UCSC built the _Treenome Browser_ component within Taxonium, described [here](https://www.biorxiv.org/content/10.1101/2022.09.28.509985v1).