smooth-app
A collaborative, free and open database of ingredients, nutrition facts and information on food products from around the world
Client-side flow cytometry analysis — user guide, methods and validation
Translation pending
HealthTypeScript · CSSGitHub @tengjuilinOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
Flow cytometry analysis that runs entirely in the browser. You load a folder of FCS files as a group,
gate them with one shared hierarchy (with per-sample adjustments), plot them, and export statistics,
plots and Gating-ML. Every method is documented, and every result is checked against reference
implementations.Read the full README ↗Flow cytometry analysis that runs entirely in the browser. You load a folder of FCS files as a group, gate them with one shared hierarchy (with per-sample adjustments), plot them, and export statistics, plots and Gating-ML. Every method is documented, and every result is checked against reference implementations.
$SPILLOVER keyword, an edited matrix, or an imported CSV.| Check | Result |
|---|---|
| ISAC Gating-ML 2.0 compliance suite (51 reference gates) | exact event-level agreement |
| FCS parsing, compensation and transforms vs FlowKit 1.2.3 (pinned) | ≤ 10⁻¹⁴, 10⁻⁹ and 10⁻¹⁰ relative |
| Statistics vs NumPy, on gated populations in linear and transformed units | ≤ 10⁻¹² relative (transformed: 10⁻¹⁰); percentiles exact on linear channels |
| Replicate summaries and t-based 95% CI vs SciPy/pandas | ≤ 10⁻¹² (t distribution 10⁻¹⁰) |
| Gating-ML exported by the app, evaluated by FlowKit (every gate kind) | identical membership, event by event |
| Gates drawn in the app, exported as Gating-ML and evaluated by FlowKit | identical population counts |
Details: docs/validation. Methods: docs/methods.
Requires Node ≥ 20 (pnpm via corepack). To regenerate the golden fixtures you also need
uv.
corepack pnpm install
corepack pnpm fixtures:fetch # large test files, SHA-256 verified
corepack pnpm dev # docs at http://localhost:5173, app at /app/
corepack pnpm check # lint + typecheck + unit/golden tests
corepack pnpm build && corepack pnpm e2e # Playwright (Chromium, Firefox, WebKit)
corepack pnpm golden # regenerate fixtures/golden from FlowKit (pinned in uv.lock)
corepack pnpm build:site && corepack pnpm preview # docs + app (at /app/), as deployed
Notes for coding agents (layering, tests, conventions) are in CLAUDE.md.
| Path | Contents |
|---|---|
packages/model | workspace schema (zod), canonical JSON, fingerprints |
packages/fcs | FCS parser and writer |
packages/transforms, compensation, gating, stats, density, render | numerical kernels |
packages/gatingml, export | Gating-ML reader/evaluator; CSV and Gating-ML export |
packages/table | statistics table: derived columns, formulas, replicate summaries, table import |
packages/testkit | test-only helpers: fixture paths, tolerances, synthetic data |
packages/engine, storage | cached analysis pipeline; OPFS persistence |
apps/web | React app and compute workers |
docs | VitePress site: guide, methods, validation, decision records |
fixtures, tools/golden | reference data and the golden-value generator (fixtures/golden/inputs: files the app writes, evaluated by FlowKit) |
Milestones M0–M3 of the implementation plan are complete, along with parts of M4–M5 (tiles, ridge plots, spider gates, Gating-ML/FCS/SVG/PNG export). Not yet implemented:
Not yet chosen. Test fixtures keep their upstream licenses (see fixtures/PROVENANCE.md).