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 with zeztzflow on the FCS files in path/to/fcs_directory. Load the data, run the default gating pipeline, and create a histogram of the first fluorescence channel faceted by row. Put each auto_gate_* call in its own marimo cell.

The agent reads AGENTS.md for the full pipeline, channel conventions, 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.0.tar.gz (76.1 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.0-py3-none-any.whl (82.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: zeztz_flow-0.2.0.tar.gz
  • Upload date:
  • Size: 76.1 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.0.tar.gz
Algorithm Hash digest
SHA256 24a9c1e24cc39b385d673e68540155d4844544d06055c8f716e25087ced1ab63
MD5 48d8c2a95277dcd2b52d62d9b602a808
BLAKE2b-256 4cea54369115aed6ee342f5e2b778834388294c8a47f74a7325bad252e11ad6f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zeztz_flow-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 82.5 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b19b42ea5f6b5c76d47d83042884b40e8e614fec1288f84bf6473728321af951
MD5 62a02edeb43d9c47ff9de7175dd58871
BLAKE2b-256 9700a588119544fe19655a091ab0cf101c3ca9852b242c71e0cda975d92dfb99

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