{"categories":[{"label":"Scientific/Engineering","url":"https://skillfed.io/packages/category/scientific-engineering/4"}],"enrichment":{"capability":"UHI defines and documents a standard interface for histogram objects across libraries, providing type protocols for runtime checking and tools to adapt NumPy-style histogram tuples into a common format.","skillfed_tags":["histogram-interop","type-protocols","scikit-hep"],"use_cases":["Type-check histogram objects from different libraries to ensure they conform to a common interface before passing them to plotting functions.","Adapt NumPy histogram tuples (counts, edges) into standardized PlottableHistogram objects for compatibility with libraries expecting the protocol.","Document and enforce histogram indexing conventions across a multi-library scientific computing project.","Support library development by providing reference protocols that new histogram implementations can conform to.","Enable runtime verification that a histogram object supports the expected methods and attributes without tight coupling to a specific library."],"what_it_does":"UHI is a standards library that defines how histogram objects should behave across different scientific Python libraries. It provides type protocols\u2014especially PlottableHistogram\u2014that libraries like boost-histogram, hist, and uproot conform to, enabling code to work with histograms from multiple sources without knowing their concrete type. The package includes runtime-checkable protocols so you can use isinstance() to verify conformance, plus a utility to convert NumPy-style histogram tuples (counts, edges) into objects that match the standard interface.\n\nThe package is designed primarily as a dependency for library authors and type checkers rather than end-user code, though it does expose a few useful runtime tools. It depends only on numpy and typing-extensions, making it lightweight to include in projects that need histogram interoperability. The active maintenance and support for current Python versions (3.10+) ensures it stays aligned with modern scientific Python practices.","worth_installing":"Yes, if you are building libraries that work with histograms from multiple sources or need to enforce histogram interface standards. Install as a type-checking or testing dependency in projects that depend on histogram libraries like boost-histogram or hist. Not necessary for end-user code that only uses a single histogram library, but adds minimal friction and provides real value in interoperability scenarios."},"id":"uhi","links":{"html":"https://skillfed.io/packages/uhi","md":"https://skillfed.io/packages/uhi.md","pypi":"https://pypi.org/project/uhi/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-04-26","license_spdx":"BSD-3-Clause","license_treatment":"permissive","name":"uhi","python_support":"supports_current","summary":"Unified Histogram Interface: tools to help library authors work with histograms"},"popularity":{"monthly_downloads":430415,"position":6728,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.1.1"}
