Skip to main content

A unified PostgreSQL-based logging plugin and backend for Snakemake

Project description

FlowO

FlowO is a Snakemake observability and workflow catalog platform: run the official logger plugin alongside Snakemake, and the web app records every execution—live Dashboard and Runs, job-level logs and errors, optional output preview, and a catalog of versioned Snakemake projects you can browse, edit, and link back to runs.

Full documentation: flowo-docs.pages.dev


Why FlowO

Real-time run monitoring PostgreSQL-backed history with SSE so the Dashboard and Runs views update as jobs start, finish, or fail.
Deep visibility Per-run DAG, Jobs, Timeline, captured code, and logs—plus result preview when the server can read the same paths Snakemake used.
Workflow catalog The Catalog stores Snakemake templates in the database (with versioning), materializes a workspace for Snakemake/DAG tooling, and ties runs to catalog entries when you report catalog metadata from the logger.

Quick start (~5 minutes)

  1. Run FlowO (Docker Compose, .env, FLOWO_WORKING_PATH) — follow Quick Start in the docs.

  2. Install the logger plugin on the machine where Snakemake runs:

    pip install snakemake-logger-plugin-flowo
    

    Optional: pip install "snakemake-logger-plugin-flowo[snakemake]" if you need Snakemake in the same venv.

  3. Authenticate the CLI (browser flow; token is written to ~/.config/flowo/config.toml, mode 0600):

    flowo login --host http://localhost:3100
    

    Replace the URL with your deployment (HTTPS in production).

  4. Run Snakemake with the FlowO logger and open Dashboard / Runs in the browser:

    cd /path/to/your/workflow
    snakemake --logger flowo \
      --logger-flowo-name "my-run" \
      --logger-flowo-tags "demo,qc"
    

Headless servers, CI, or MCP: create a long-lived token under Settings → API Tokens only when you cannot use flowo login. See Login and CLI setup (manual token section).


Screenshots

Dashboard Run detail
Dashboard — fleet status and activity Run detail — DAG, jobs, timeline, code, results
Catalog DAG preview (catalog)
Catalog — browse stored workflows DAG preview — best-effort rule graph (catalog / template)

Documentation map

Section What you will find
Quick Start Shortest path: Compose, flowo login, first Snakemake run.
User manual (same site) Installation, Runs, catalog, DAG preview, results, jobs & errors.
Architecture Data flow, catalog storage model.
Advanced features Optional MCP and email (SMTP); not required for core use.

Contributing & development

git clone https://github.com/zhanghaomiao/flowo.git
cd flowo
docker compose -f compose.dev.yml up --build
  • Gateway: http://localhost:3100 (combined frontend + API in dev compose)
  • Backend API: http://localhost:8000
  • Frontend (Vite): http://localhost:5173

Build the docs locally:

uv sync --extra docs
uv run mkdocs build --strict

Live demo

A hosted sandbox may be available at flowo.iregene-bio.com. For credentials or access policy, see the Quick Start or contact the maintainers.

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

snakemake_logger_plugin_flowo-2.0.3.tar.gz (3.2 MB view details)

Uploaded Source

Built Distribution

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

snakemake_logger_plugin_flowo-2.0.3-py3-none-any.whl (20.8 kB view details)

Uploaded Python 3

File details

Details for the file snakemake_logger_plugin_flowo-2.0.3.tar.gz.

File metadata

File hashes

Hashes for snakemake_logger_plugin_flowo-2.0.3.tar.gz
Algorithm Hash digest
SHA256 5b8f0b6f28b5db9fd3fac5059d8d9ebc01886e3ed410a6cf61ccddc217dc13ad
MD5 cd75b20f6efd72aaf099faa24f4e45c3
BLAKE2b-256 df68bb81f47acd73fd92038604d37ed7327b36f9f145495e2686c3a31e428a3b

See more details on using hashes here.

File details

Details for the file snakemake_logger_plugin_flowo-2.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for snakemake_logger_plugin_flowo-2.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d2ea3d31300efe92c2955046422cfb57b83a71dcd7d271d88a9f8aa86c2c4581
MD5 8bee8f93d6ebda97d25c21f05be30ea8
BLAKE2b-256 6c7a86c2c3f69c8e7d1c5e9345ae40e603000170342771139fb1401ebcae9f7d

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