Skip to main content

higlass-python 🔎

A fresh Python library for higlass built on top of higlass-schema and anywidget.

License Open In Colab

Installation

pip install higlass-python

Usage

import higlass as hg

# Remote data source (tileset)
tileset1 = hg.remote(
    uid="CQMd6V_cRw6iCI_-Unl3PQ",
    server="https://higlass.io/api/v1/",
    name="Rao et al. (2014) GM12878 MboI (allreps) 1kb",
)

# Local tileset
tileset2 = hg.cooler("../data/dataset.mcool")

# Create a `hg.HeatmapTrack` for each tileset
track1 = tileset1.track("heatmap")
track2 = tileset2.track("heatmap")

# Create two independent `hg.View`s, one for each heatmap
view1 = hg.view(track1, width=6)
view2 = hg.view(track2, width=6)

# Lock zoom & location for each `View`
view_lock = hg.lock(view1, view2)

# Concatenate views horizontally and apply synchronization lock
(view1 | view2).locks(view_lock)

Side-by-side Hi-C heatmaps, linked by pan and zoom

To learn more about the new API, check out the updated documentation.

Upgrade Guide

higlass-python v1.0 is a total rewrite of our prior implementation, aimed to offer a more ergonomic and flexible API. While this might present challenges when upgrading existing code, we've prepared documentation to guide you through the new API usage.

If you find a missing feature, please open an issue – we're committed to supporting your use cases with the new API.

Despite the large changes in v1.0, we will strive to avoid breaking changes going forward. However, because of the complete rewrite, the v1.0 release doesn't strictly adhere to semantic versioning. You can think of it as a pre-1.0 release, with breaking changes and new features included in minor releases, and bug fixes in patch releases.

We will aim for strict semantic versioning with the v2.0 release. Your feedback and understanding are greatly appreciated.

Development

higlass-python is primarily a Python project, but it includes JavaScript for the anywidget-based front-end code (src/higlass/widget.js). We use uv for Python development and deno for linting and type-checking JavaScript.

All formatting, linting, and tests are enforced in CI.

Commands Cheatsheet

All commands are run from the root of the project, from a terminal:

Python

Command Action
uv run jupyter lab Run Jupyter lab with current package state
uv run ruff check --fix && uv run ruff format Lint and apply formatting
uv run check Check linting rules
uv run ruff format --check Check formatting
uv run pytest Run unit tests
uv run docs/build.py Build the documentation in docs/_build/html

JavaScript

Command Action
deno fmt Format code
deno lint --fix Lint and auto-fix issues
deno check src/higlass/widget.js Typecheck .js with TypeScript

Changelog

Check the GitHub Releases for a detailed changelog.

Release

Releases are managed via the GitHub UI.

Draft a new release:

  1. Create a tag

    • Click "Choose a tag", then type a new tag in the format v[major].[minor].[patch] to create it.
    • Note: The UI is not obvious about this. You can create a tag here, not just select one. Tag creation triggers a workflow to publish to PyPI.
  2. Generate release notes

    • Click "Generate Release Notes" to auto-summarize changes from merged PRs.
    • Edit to exclude irrelevant changes for end users (e.g., docs or CI).
  3. Document significant changes

    • Add migration steps or noteworthy updates.
    • Ensure PR titles are clear and consistent.

Release files for higlass-python 1.4.0

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

Source distribution (sdist)

Source distribution for higlass-python 1.4.0
File Size Uploaded
higlass_python-1.4.0.tar.gz 2.3 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for higlass-python 1.4.0
File Interpreter ABI Platform
higlass_python-1.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 2.3 MB

Release files / higlass_python-1.4.0.tar.gz

Download URL higlass_python-1.4.0.tar.gz
Size 2.3 MB
Tags Source
SHA-256 checksum
How to use checksums
bf250e8baa2f3667f715a585805191cec5ab0bd8d93392abcdfe43aa430daef3
BLAKE2b-256 checksum
How to use checksums
b681c8fb21cc64017177a673fc4dd76660113e9b42e7ebd6a551d1bde77eb365
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 1, 2026.

Transparency log

Release files / higlass_python-1.4.0-py3-none-any.whl

Download URL higlass_python-1.4.0-py3-none-any.whl
Size 24.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fa1d5ed4924b73bf391ee9342c82560c71942e980f799b338faf7c07c4c8a1e8
BLAKE2b-256 checksum
How to use checksums
5c2906b523f00c0d2238658db9033f9be66e4ba859cab414f8bd69a38646ddac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 1, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.4.0 This release

2 release files

1.3.5

2 release files

1.3.4

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.4.8

2 release files

0.4.7

2 release files

0.4.6

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

1 release file

0.2.1

1 release file

0.2.0

1 release file

0.1.14

1 release file

0.1.13

1 release file

0.1.12

1 release file

0.1.11

1 release file

0.1.10

1 release file

0.1.7

1 release file

0.1.5

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.1

1 release file

0.1.0

1 release file

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