A Python compiler to map UCSC Track Hub configurations to Gosling.js specs.
Project description
hub2gos
Transpiler to map a UCSC Trackhub configuration to a Gosling spec
Input Data Specifications & Compression Rules
When converting a UCSC Track Hub configuration using hub2gos, input data URLs must adhere strictly to the coordinate streaming capabilities of modern web browsers. In addition, some UCSC Track Hub file types are not compatible and must have an alternate file path under the gos_url property that will be used to read the data into Gosling instead. Otherwise the transpiler will use the bigDataUrl property instead.
Supported Formats & Compression Matrices
| UCSC Track Type | Expected File Suffix(es) | gos_url file? | Tabix Index Required? | Work-in-progress? |
|---|---|---|---|---|
| BAM | .bam |
No | Yes (.bam.bai) |
Yes |
| BigBed | .bb, .bigbed |
.bed.gz |
Yes (BGZF-formatted .tbi) |
No |
| BigInteract | .bi, .bigInteract |
"beddb" HiGlass tileset | No | No |
| BigWig | .bw, .bigwig |
No | No | No |
| HiC | .hic |
"cooler" HiGlass tileset | No | No |
| VCF | .vcf.gz |
No | Yes (BGZF-formatted .tbi) |
Yes |
⚠️ Performance Note on BAM Tracks: While natively supported by Gosling, rendering BAM files over a broad genomic coordinate range can degrade client-side performance. For better performance, consider converting BAM files to BigWig (for depth density) or BigBed/BED (for structural mutations) during your server pipeline staging.
Crucial Constraints
None of these contraints will prevent you from generating the Gosling spec JSON. They will however prevent you from streaming the data in the Gosling viewer.
- Plaintext Text Files: Uncompressed tabular streams (e.g., raw
.bedor.vcftext targets) are unsupported for chunked client-side streaming. Text tracking formats must be block-gzipped usingbgzipbefore indexing. Documentation on bgzip - Alternative Compressors: High-ratio archival compressors such as
bzip2(.bz2) orxz(.xz) are completely unsupported. These engines do not produce block-level byte partitions, making selective genomic coordinate slicing over network requests impossible. - For any track type that recommends serving files on a HiGlass server, you can peruse the HiGlass documentation to learn how to set up a HiGlass server, aggregate files with Clodius, and ingest them into HiGlass.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hub2gos-0.1.0.tar.gz.
File metadata
- Download URL: hub2gos-0.1.0.tar.gz
- Upload date:
- Size: 20.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
720b32bed795dbc8f5da5fc85634d4e98ac17a30f447e9d35a17a830d0fa8804
|
|
| MD5 |
366d6eec20e56eb227cfacd5adfb2e47
|
|
| BLAKE2b-256 |
07b6546682717793f79f1ac9297599e976e5b5c557272cc4f55ddebe4c70baee
|
File details
Details for the file hub2gos-0.1.0-py3-none-any.whl.
File metadata
- Download URL: hub2gos-0.1.0-py3-none-any.whl
- Upload date:
- Size: 14.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d8824ef5c4c229170a7683f16083975c88c758f4e5d66f5b80a752212f0c8ffc
|
|
| MD5 |
9116455bf927153484e1f5a7488bacbf
|
|
| BLAKE2b-256 |
4ff9af29e73a9175c9f965f1c31cb211381360e5ecd60b7837e12dc9e1dccffe
|