Skip to main content

Self-contained flow cytometry analysis helpers with a slim vendored Cytoflow runtime.

Project description

zeztz-flow

zeztz-flow is an marimo-compatible flow-cytometry FCS analysis package. Derived from cytoflow, this package is designed to become a minimal platform, allowing users to perform vibe analysis with their own AI agents.

Features:

  • FCS import with automatic well-plate metadata
  • Cleanup gating: scatter, doublet removal, polygon, custom thresholds
  • Density plots, faceted histograms, ridgeline plots
  • Subset by row, column, or well
  • Median-fluorescence export
  • Self-contained — vendored Cytoflow runtime, no extra installs
  • Pure Python — no compiled extensions
  • Designed for AI-assisted analysis

Installation

pip install zeztz-flow

Package name on PyPI is zeztz-flow (with hyphen), but the import is zeztzflow (no hyphen, no underscore):

import zeztzflow as flow

Using with marimo (uv-based)

# Install into existing marimo environment
uv pip install zeztz-flow

# Or create a new project
uv init my-fcs-analysis
cd my-fcs-analysis
uv add marimo zeztz-flow
uv run marimo edit

Development

git clone https://github.com/anomalyco/ZeztzFlow.git
cd ZeztzFlow
uv venv
uv pip install -e .
uv run python test/package_smoke_test.py

For conda-based setup: mamba env create -f environment.yml

Quick Start

Open a marimo notebook and paste this prompt to your AI agent:

Run a first-pass flow cytometry analysis using zeztzflow on the FCS files in path/to/fcs_directory. Load with zeztz_exp, run the default gating pipeline (saturation, cells, singlets), then show a histogram faceted by row. Put each auto_gate_* call in its own marimo cell.

The agent reads AGENTS.md for the full pipeline, channel names, and marimo gotchas.

Documentation

Testing

MPLCONFIGDIR=/tmp/mplconfig python test/package_smoke_test.py

License

GPL-compatible. See LICENSE.txt and THIRD_PARTY_NOTICES.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zeztz_flow-0.2.2.tar.gz (76.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zeztz_flow-0.2.2-py3-none-any.whl (83.2 kB view details)

Uploaded Python 3

File details

Details for the file zeztz_flow-0.2.2.tar.gz.

File metadata

  • Download URL: zeztz_flow-0.2.2.tar.gz
  • Upload date:
  • Size: 76.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.20 {"installer":{"name":"uv","version":"0.11.20","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for zeztz_flow-0.2.2.tar.gz
Algorithm Hash digest
SHA256 e7745342c5a18b36a5aad5b2148beacfbb7db7bb0303740e0c3680cddec1e6a9
MD5 401ba59b7ecf3ca1ed65d1bf3859d933
BLAKE2b-256 da325ca48e0fc832367cac8507e5aca6cb92ef117c3868462ac06720a217c30b

See more details on using hashes here.

File details

Details for the file zeztz_flow-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: zeztz_flow-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 83.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.20 {"installer":{"name":"uv","version":"0.11.20","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for zeztz_flow-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2644a14784f5ba5e15a06447d23258d2c38dd12d4c69ac539470474a766a2cdc
MD5 6c9ed9d86b7373fc5e655b1315f6fa34
BLAKE2b-256 5a06ea1a73ce90f6c8b7a82140fe027b73dc258c47bbf93420295e0051753180

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page