tsbrowse
Inspect large genetic genealogies (e.g. ARGs) stored in the tskit "succinct tree sequence" format, via a web app.
Tsbrowse can scale to ARGs with millions of samples.
Documentation: https://tskit.dev/tsbrowse/docs/stable/ (latest: https://tskit.dev/tsbrowse/docs/latest/)
It is particularly useful to help evaluate ARGs that have been inferred using tools such as tsinfer, sc2ts, Relate, Threads, etc.
Quickstart
Installation
Install from PyPI:
python -m pip install tsbrowse
A tskit tree sequence must first be preprocessed to a .tsbrowse file:
python -m tsbrowse preprocess /path/to/trees-file
This will write a .tsbrowse file that can then be viewed using the web app:
python -m tsbrowse serve /path/to/tsbrowse-file
This command will launch a web server that can be accessed at http://localhost:8080 in a web browser.
To display the genes track use:
python -m tsbrowse serve /path/to/tsbrowse-file --annotations-file genes.csv
(where genes.csv is a semicolon-separated text file containing a header and information about one gene per row in the order: chr;start;end;strand;ensembl ID;gene name)
An example tree sequence file can be found here: example.trees.
Tips
If you are using Windows Subsystem for Linux (WSL) you may need to disable Numba's CUDA support:
NUMBA_DISABLE_CUDA=1 python -m tsbrowse serve /path/to/tsbrowse-file
A PNG of a specific page in tsbrowse can be generated using the screenshot command:
python -m tsbrowse screenshot /path/to/tsbrowse-file mutations
Development
Tests are run with pytest:
python -m pytest
To run the UI tests so you can see what the browser is doing use
python -m pytest --headed --slowmo 1000 tests/test_ui.py
playwright codegen is also useful for writing UI test code.
Citing tsbrowse
If you use tsbrowse in your work, please cite this paper
Metadata
Release files for tsbrowse 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tsbrowse-0.1.2.tar.gz | 626.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tsbrowse-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 650.1 kB
Release files / tsbrowse-0.1.2.tar.gz
| Download URL | tsbrowse-0.1.2.tar.gz |
|---|---|
| Size | 626.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d2e9d94ab499fbe1dc8f22c1a7a709405dc894d352dfa0a3155029eee1546786
|
|
BLAKE2b-256 checksum How to use checksums |
444243b6d9cfe10cbd980478eefe512c7d0fe051c0ce5f84580ee17410ebfc6b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.
Transparency logRelease files / tsbrowse-0.1.2-py3-none-any.whl
| Download URL | tsbrowse-0.1.2-py3-none-any.whl |
|---|---|
| Size | 24.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7452563dbe9e2b2d5bb0ffd0c8fd8e5654f5dd573c8ab9a69852c99078bf4a7b
|
|
BLAKE2b-256 checksum How to use checksums |
28b0c39ebb114657c59f3c61442d7d19b74a1ed829e533b95da526a8ea58e542
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.
Transparency log