taxonium-component
A tool for exploring large trees in the browser
Science Score: 77.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: biorxiv.org, pubmed.ncbi, ncbi.nlm.nih.gov -
✓Committers with academic emails
4 of 13 committers (30.8%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.9%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
A tool for exploring large trees in the browser
Basic Info
- Host: GitHub
- Owner: theosanderson
- License: gpl-3.0
- Language: TypeScript
- Default Branch: master
- Homepage: http://taxonium.org
- Size: 260 MB
Statistics
- Stars: 114
- Watchers: 6
- Forks: 22
- Open Issues: 115
- Releases: 127
Topics
Metadata Files
README.md
Taxonium
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
<!-- ALL-CONTRIBUTORS-BADGE:END -->
Taxonium is a tool for exploring trees, including those with millions of nodes.
➡️ Launch Taxonium
📚 Consult the documentation
📝 Read the paper
How do I..
visualise my own Newick phylogeny?
Upload a Newick file to 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 which uses Taxonium to allow you to explore a tree built by researchers at UCSC 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 to build a mutation-annotated tree. Then use taxoniumtools to convert it to a Taxonium format you can upload to the interface at Taxonium.org
You can also use taxoniumtools to add your own metadata to the existing public phylogeny.
Find out more in 📚 the documentation.
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.
use Taxonium in my own web application?
Use the Taxonium component.
See Taxonium in action
- Cov2Tree - (the repo that runs this is here)
- Exploring the NCBI Taxonomy
- Serratus (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 (.. and ideally Taxonium too if you relied on it for exploration)
There is a separate paper for the Treenome Browser feature (Kramer et al., Bioinformatics, 2022).
Structure
Taxonium is structured as a 'monorepo' containing a number of components:
- taxoniumtools - a Python package that lets you easily generate Taxonium files from Usher protobuf files
- taxonium_component - a React component that implements the Taxonium tree explorer
- taxonium_website - The Taxonium website found at Taxonium.org, a wrapper around taxonium_component
- 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)
- taxoniumdatahandling - 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. We require that that all contributors follow the Contributor Covenant Code of Conduct.
Contributors
Taxonium development was initiated and is led by Theo Sanderson at the Francis Crick Institute.
Theo Sanderson 💻 📖 🎨 🤔 🚇 🚧 |
We are very grateful to our contributors:
Alex Kramer 💻 🎨 🤔 |
Angie Hinrichs 🤔 🔣 💻 |
Richard Goater 🎨 💻 |
Chaoran Chen 🤔 |
Cornelius Roemer 🤔 |
Sung Kwon 🚇 |
Koorous Vargha 💻 |
Alex Kramer at UCSC built the Treenome Browser component within Taxonium, described here.
Owner
- Name: Theo Sanderson
- Login: theosanderson
- Kind: user
- Location: London, UK
- Company: London School of Hygiene & Tropical Medicine
- Website: http://theo.io
- Twitter: theosanderson
- Repositories: 156
- Profile: https://github.com/theosanderson
Full stack pathogen geneticist
Citation (CITATION.bib)
@article {10.7554/eLife.82392,
article_type = {journal},
title = {Taxonium, a web-based tool for exploring large phylogenetic trees},
author = {Sanderson, Theo},
volume = 11,
year = 2022,
month = {nov},
pub_date = {2022-11-15},
pages = {e82392},
citation = {eLife 2022;11:e82392},
doi = {10.7554/eLife.82392},
url = {https://doi.org/10.7554/eLife.82392},
abstract = {The COVID-19 pandemic has resulted in a step change in the scale of sequencing data, with more genomes of SARS-CoV-2 having been sequenced than any other organism on earth. These sequences reveal key insights when represented as a phylogenetic tree, which captures the evolutionary history of the virus, and allows the identification of transmission events and the emergence of new variants. However, existing web-based tools for exploring phylogenies do not scale to the size of datasets now available for SARS-CoV-2. We have developed Taxonium, a new tool that uses WebGL to allow the exploration of trees with tens of millions of nodes in the browser for the first time. Taxonium links each node to associated metadata and supports mutation-annotated trees, which are able to capture all known genetic variation in a dataset. It can either be run entirely locally in the browser, from a serverbased backend, or as a desktop application. We describe insights that analysing a tree of five million sequences can provide into SARS-CoV-2 evolution, and provide a tool at cov2tree.org for exploring a public tree of more than five million SARS-CoV-2 sequences. Taxonium can be applied to any tree, and is available at taxonium.org, with source code at github.com/theosanderson/taxonium.},
journal = {eLife},
issn = {2050-084X},
publisher = {eLife Sciences Publications, Ltd},
}
GitHub Events
Total
- Create event: 98
- Release event: 16
- Issues event: 24
- Watch event: 9
- Delete event: 45
- Issue comment event: 143
- Push event: 378
- Pull request review comment event: 1
- Pull request review event: 3
- Pull request event: 137
- Fork event: 4
Last Year
- Create event: 98
- Release event: 16
- Issues event: 24
- Watch event: 9
- Delete event: 45
- Issue comment event: 143
- Push event: 378
- Pull request review comment event: 1
- Pull request review event: 3
- Pull request event: 137
- Fork event: 4
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Theo Sanderson | t****o@s****k | 1,832 |
| github-actions | 4****] | 150 |
| pre-commit-ci[bot] | 6****] | 54 |
| Alex Kramer | a****r@u****u | 53 |
| github-actions | g****s@g****m | 29 |
| allcontributors[bot] | 4****] | 15 |
| Alex Kramer | a****e@u****u | 13 |
| Richard Goater | r****9@s****k | 3 |
| Angie Hinrichs | a****e@s****u | 3 |
| Sung Kwon | s****n@t****i | 1 |
| Sehi L'Yi | s****i@g****m | 1 |
| Koorous Vargha | 3****a | 1 |
| Cornelius Roemer | c****r@g****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 117
- Total pull requests: 309
- Average time to close issues: 25 days
- Average time to close pull requests: 8 days
- Total issue authors: 23
- Total pull request authors: 10
- Average comments per issue: 2.68
- Average comments per pull request: 1.24
- Merged pull requests: 191
- Bot issues: 0
- Bot pull requests: 19
Past Year
- Issues: 21
- Pull requests: 176
- Average time to close issues: 7 days
- Average time to close pull requests: 3 days
- Issue authors: 9
- Pull request authors: 4
- Average comments per issue: 1.71
- Average comments per pull request: 1.13
- Merged pull requests: 89
- Bot issues: 0
- Bot pull requests: 16
Top Authors
Issue Authors
- theosanderson (40)
- corneliusroemer (36)
- AngieHinrichs (14)
- GuilhemSempere (4)
- chaoran-chen (4)
- UTNK (3)
- Sanyukta2001 (2)
- aofarrel (2)
- liamxg (2)
- kvargha (1)
- alex1770 (1)
- Biophylo2001 (1)
- martinghunt (1)
- NicolaDM (1)
- singing-scientist (1)
Pull Request Authors
- theosanderson (296)
- dependabot[bot] (15)
- AngieHinrichs (5)
- amkram (4)
- allcontributors[bot] (3)
- simonbukin (2)
- pre-commit-ci[bot] (1)
- DLiarakos (1)
- richardgoater (1)
- sehilyi (1)
- corneliusroemer (1)
- kvargha (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
-
Total downloads:
- pypi 1,913 last-month
- npm 2,268 last-month
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 1
(may contain duplicates) - Total versions: 148
- Total maintainers: 1
npmjs.org: taxonium-component
React component for exploring large phylogenetic trees in the browser
- Homepage: https://github.com/theosanderson/taxonium#readme
- License: gpl-3.0
-
Latest release: 2.1.12
published 6 months ago
Rankings
Maintainers (1)
pypi.org: taxoniumtools
Generate files for taxonium
- Homepage: https://github.com/theosanderson/taxonium
- Documentation: https://taxoniumtools.readthedocs.io/
- License: MIT License
-
Latest release: 2.1.10
published 7 months ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v3 composite
- docker/build-push-action ac9327eae2b366085ac7f6a2d02df8aa8ead720a composite
- docker/login-action 28218f9b04b4f3f62068d7b6ce6ca5b26e35336c composite
- docker/metadata-action 98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 composite
- docker/setup-buildx-action 79abd3f86f79a9d68a23c75a09a9a85889262adf composite
- sigstore/cosign-installer d6a3abf1bdea83574e28d40543793018b6035605 composite
- actions/checkout v3 composite
- docker/build-push-action ac9327eae2b366085ac7f6a2d02df8aa8ead720a composite
- docker/login-action 28218f9b04b4f3f62068d7b6ce6ca5b26e35336c composite
- docker/metadata-action 98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 composite
- docker/setup-buildx-action 79abd3f86f79a9d68a23c75a09a9a85889262adf composite
- sigstore/cosign-installer d6a3abf1bdea83574e28d40543793018b6035605 composite
- actions/checkout v1 composite
- actions/setup-node v1 composite
- actions/upload-artifact v1 composite
- shogo82148/actions-upload-release-asset v1 composite
- actions/checkout v2 composite
- actions/setup-node v3 composite
- actions/upload-artifact v3 composite
- actions/checkout v3 composite
- actions/setup-python v3 composite
- pre-commit/action v3.0.0 composite
- actions/checkout v2 composite
- creyD/prettier_action v4.2 composite
- actions/checkout master composite
- actions/setup-python v1 composite
- pypa/gh-action-pypi-publish master composite
- actions/checkout master composite
- mritunjaysharma394/autoyapf v2 composite
- LouisBrunner/checks-action v1.1.1 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/upload-artifact v3 composite
- actions/checkout v3 composite
- actions/download-artifact v3 composite
- actions/setup-python v3 composite
- mcr.microsoft.com/vscode/devcontainers/javascript-node 0-${VARIANT} build
- @jsonlines/core ^1.0.2
- axios ^0.26.1
- commander ^9.1.0
- compression ^1.7.4
- cors ^2.8.5
- express ^4.17.3
- express-queue ^0.0.13
- node-fetch ^3.2.10
- pako ^2.0.4
- taxonium_data_handling file:../taxonium_data_handling
- xml2js ^0.4.23
- @jsonlines/core 1.0.2
- accepts 1.3.8
- array-flatten 1.1.1
- axios 0.26.1
- body-parser 1.19.2
- bytes 3.0.0
- bytes 3.1.2
- commander 9.1.0
- compressible 2.0.18
- compression 1.7.4
- content-disposition 0.5.4
- content-type 1.0.4
- cookie 0.4.2
- cookie-signature 1.0.6
- core-js 3.22.2
- cors 2.8.5
- data-uri-to-buffer 4.0.0
- debug 2.6.9
- debug 4.3.4
- debug 3.2.7
- depd 1.1.2
- destroy 1.0.4
- ee-first 1.1.1
- encodeurl 1.0.2
- escape-html 1.0.3
- etag 1.8.1
- express 4.17.3
- express-end 0.0.8
- express-queue 0.0.13
- fetch-blob 3.2.0
- finalhandler 1.1.2
- follow-redirects 1.14.9
- formdata-polyfill 4.0.10
- forwarded 0.2.0
- fresh 0.5.2
- http-errors 1.8.1
- iconv-lite 0.4.24
- inherits 2.0.4
- ipaddr.js 1.9.1
- media-typer 0.3.0
- merge-descriptors 1.0.1
- methods 1.1.2
- mime 1.6.0
- mime-db 1.52.0
- mime-types 2.1.35
- mini-queue 0.0.14
- ms 2.0.0
- ms 2.1.2
- ms 2.1.3
- negotiator 0.6.3
- node-domexception 1.0.0
- node-fetch 3.2.10
- object-assign 4.1.1
- on-finished 2.3.0
- on-headers 1.0.2
- pako 2.0.4
- parseurl 1.3.3
- path-to-regexp 0.1.7
- proxy-addr 2.0.7
- qs 6.9.7
- range-parser 1.2.1
- raw-body 2.4.3
- readable-stream 3.6.0
- readable-web-to-node-stream 3.0.2
- safe-buffer 5.1.2
- safe-buffer 5.2.1
- safer-buffer 2.1.2
- sax 1.2.4
- send 0.17.2
- serve-static 1.14.2
- setprototypeof 1.2.0
- statuses 1.5.0
- string_decoder 1.3.0
- taxonium_data_handling 1.0.1
- toidentifier 1.0.1
- type-is 1.6.18
- unpipe 1.0.0
- util-deprecate 1.0.2
- utils-merge 1.0.1
- vary 1.1.2
- web-streams-polyfill 3.2.1
- xml2js 0.4.23
- xmlbuilder 11.0.1
- readable-web-to-node-stream ^3.0.2
- inherits 2.0.4
- readable-stream 3.6.0
- readable-web-to-node-stream 3.0.2
- safe-buffer 5.2.1
- string_decoder 1.3.0
- util-deprecate 1.0.2
- @electron-forge/cli ^6.0.0-beta.67 development
- @electron-forge/maker-deb ^6.0.0-beta.67 development
- @electron-forge/maker-dmg ^6.0.0-beta.67 development
- @electron-forge/maker-rpm ^6.0.0-beta.67 development
- @electron-forge/maker-squirrel ^6.0.0-beta.67 development
- @electron-forge/maker-zip ^6.0.0-beta.67 development
- electron ^21.1.0 development
- electron-squirrel-startup ^1.0.0
- taxonium_backend file:../taxonium_backend
- 553 dependencies
- eslint-config-standard ^16.0.3 development
- eslint-plugin-node ^11.1.0 development
- eslint-plugin-promise ^5.1.0 development
- postcss 8 development
- @craco/craco ^6.1.2
- @fontsource/roboto ^4.5.5
- @jbrowse/plugin-data-management ^2.1.4
- @jbrowse/react-linear-genome-view ^2.1.4
- @tailwindcss/forms ^0.5.2
- @testing-library/jest-dom ^5.11.4
- @testing-library/react ^11.1.0
- @testing-library/user-event ^12.1.10
- JSONStream ^1.3.5
- autoprefixer ^9
- axios ^0.27.2
- binary-search ^1.3.6
- classnames ^2.3.1
- commander ^9.0.0
- compression ^1.7.4
- cors ^2.8.5
- craco ^0.0.3
- deck.gl ^8.6.6
- jsonl ^1.1.2
- lodash ^4.17.21
- lzma-native ^8.0.6
- node-polyfill-webpack-plugin ^1.1.4
- pako ^2.0.4
- process ^0.11.10
- react ^17.0.2
- react-circular-progressbar ^2.0.4
- react-debounce-input ^3.2.3
- react-dom ^17.0.2
- react-hot-toast ^2.2.0
- react-icons ^4.6.0
- react-modal ^3.15.1
- react-router-dom ^5.2.0
- react-scripts 5.0.0
- react-spinners ^0.11.0
- react-tooltip ^4.2.21
- readable-web-to-node-stream ^3.0.2
- scale-color-perceptual ^1.1.2
- tailwindcss >=3.1.0
- taxonium_data_handling file:../taxonium_data_handling
- web-vitals ^1.0.1
- webpack ^5.72.0
- yargs ^17.3.1
- 1853 dependencies
- alive-progress *
- biopython *
- furo *
- google-api-python-client *
- myst-parser *
- orjson *
- pandas *
- protobuf <4
- sphinx-argparse *
- sphinx-book-theme *
- sphinx-rtd-theme *
- sphinxcontrib-gtagjs *
- treeswift *