Skip to content

v0.1.0

Latest

Choose a tag to compare

@Claptar Claptar released this 11 Dec 16:04
· 2 commits to main since this release

Release Notes - h5ad-cli v0.1.0

๐ŸŽ‰ Initial Release

h5ad-cli is a lightweight, streaming command-line tool for exploring large AnnData .h5ad files without loading them fully into memory. Built with Typer and Rich for a modern CLI experience.

โœจ Features

Commands

  • h5ad info โ€“ Display high-level file structure including n_obs ร— n_var dimensions and top-level groups with their child keys
  • h5ad table โ€“ Export obs or var metadata tables to CSV format with memory-efficient chunked streaming

Capabilities

  • ๐Ÿš€ Memory-efficient streaming โ€“ Process multi-GB .h5ad files without loading them into RAM
  • ๐ŸŽจ Rich colorized output โ€“ Clear, formatted console output using Rich library
  • ๐Ÿ“Š Progress tracking โ€“ Real-time status updates during long-running exports
  • ๐Ÿ”ง Flexible CSV export โ€“ Select specific columns, customize chunk sizes, output to file or stdout
  • ๐Ÿท๏ธ Categorical support โ€“ Properly decodes AnnData categorical columns with cached label lookups
  • ๐Ÿ“ Type safety โ€“ Built with Python 3.12+ type hints throughout

๐Ÿ“ฆ Installation

git clone https://github.com/cellgeni/h5ad-cli.git
cd h5ad-cli
uv sync

๐Ÿš€ Quick Start

# View file structure
uv run h5ad info data.h5ad

# Export full obs metadata
uv run h5ad table data.h5ad --axis obs --out metadata.csv

# Export selected columns to stdout
uv run h5ad table data.h5ad --axis obs --cols cell_type,donor

๐Ÿ“‹ Requirements

  • Python โ‰ฅ 3.12
  • h5py โ‰ฅ 3.15.1
  • typer โ‰ฅ 0.20.0

๐Ÿ”ฎ Future Plans

  • Matrix data inspection commands
  • Subset extraction utilities
  • Additional export formats
  • Enhanced filtering options

Full Changelog: Initial release