Skip to main content

TrackNado

TrackNado builds UCSC Genome Browser track hubs from local track files and a small table of metadata. Use it when you want a repeatable way to stage bigWig, bigBed, BAM, and annotation tracks for a UCSC hub.

The command-line interface is the simplest way to start. The Python API exposes the same build steps for pipelines and scripts.

Install

pip install tracknado

Build a hub

This example creates a hub for four tracks on hg38.

  1. Make an editable metadata table from the files:

    tracknado design \
      -i tracks/*.bw \
      -i tracks/*.bb \
      -o tracks.csv
    
  2. Edit tracks.csv. Every row is one track. file_path is required; the other columns describe how the track should appear in the browser.

    file_path,name,ext,assay,cell_type,color
    tracks/k562_ctcf.bw,K562 CTCF,bigWig,ChIP-seq,K562,crimson
    tracks/gm12878_ctcf.bw,GM12878 CTCF,bigWig,ChIP-seq,GM12878,#4169E1
    tracks/k562_atac.bw,K562 ATAC,bigWig,ATAC-seq,K562,darkorange
    tracks/peaks.bb,Called peaks,bigBed,Peaks,All,#464646
    
  3. Build and stage the hub:

    tracknado create \
      --metadata tracks.csv \
      --output my_hub \
      --hub-name project_tracks \
      --hub-email you@example.org \
      --genome-name hg38 \
      --subgroup-by assay \
      --subgroup-by cell_type
    
  4. Check the staged hub:

    tracknado validate my_hub
    

my_hub now contains project_tracks.hub.txt, the genome and trackDb files, copied track files, and tracknado_config.json. Publish that directory through a web server, then give UCSC the URL to the .hub.txt file.

Common changes

  • Add a top-level folder-like grouping: --supergroup-by assay.
  • Give tracks colours from a categorical metadata field: --color-by cell_type.
  • Combine related signal tracks in one display: --overlay-by condition.
  • Convert BED, GTF, or GFF inputs while building: add --convert --chrom-sizes hg38.chrom.sizes.
  • Build an assembly hub for a private genome: add --custom-genome --twobit reference.2bit --organism "Species name".

See the documentation for the complete walkthrough, metadata rules, track layouts, and Python examples.

Python API

import pandas as pd
import tracknado as tn

tracks = pd.read_csv("tracks.csv")
hub = (
    tn.HubBuilder()
    .add_tracks_from_df(tracks)
    .group_by("assay", "cell_type")
    .build(
        name="project_tracks",
        genome="hg38",
        outdir="my_hub",
        hub_email="you@example.org",
    )
)
hub.stage_hub()

License

TrackNado is distributed under the GNU General Public License v3.

Metadata

Release files for tracknado 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tracknado 0.3.2
File Size Uploaded Provenance
tracknado-0.3.2.tar.gz 1.3 MB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for tracknado 0.3.2
File Interpreter ABI Platform
tracknado-0.3.2-py3-none-any.whl Python 3 none any Details

Total release size: 1.3 MB

Release files / tracknado-0.3.2.tar.gz

Download URL tracknado-0.3.2.tar.gz
Size 1.3 MB
Tags Source
SHA-256 checksum
How to use checksums
2de9d4d8e7e4d210305b90e7871675d05915d83e1e2c7626870769dc73acf52a
BLAKE2b-256 checksum
How to use checksums
2c576ade7ac2ac0a918fc37adff14a9cfb918814a339fc2b9e9943bda74336f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.14

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 Jul 21, 2026.

Transparency log

Release files / tracknado-0.3.2-py3-none-any.whl

Download URL tracknado-0.3.2-py3-none-any.whl
Size 40.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9618edc71a15d3c13ef2bf8e63d7116677b251f893297d4391ba5739f3b6a0a5
BLAKE2b-256 checksum
How to use checksums
056be041374d08f37304ce0349562fed8e4a69a975d8d443251dcf7c381bf6f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.14

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 Jul 21, 2026.

Transparency log

Security for tracknado 0.3.2

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for tracknado-0.3.2.tar.gz

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 Jul 21, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page