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)
-
Run FlowO (Docker Compose,
.env,FLOWO_WORKING_PATH) — follow Quick Start in the docs. -
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. -
Authenticate the CLI (browser flow; token is written to
~/.config/flowo/config.toml, mode0600):flowo login --host http://localhost:3100
Replace the URL with your deployment (HTTPS in production).
-
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 — fleet status and activity | Run detail — DAG, jobs, timeline, code, results |
| 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file snakemake_logger_plugin_flowo-2.0.4.tar.gz.
File metadata
- Download URL: snakemake_logger_plugin_flowo-2.0.4.tar.gz
- Upload date:
- Size: 3.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
704c985bae666c127f7e04796baad99a1d87efd1c2a0d15e44ec2b368b97226d
|
|
| MD5 |
aa5f4f076c29382fd70b529864c7240e
|
|
| BLAKE2b-256 |
566868931fa4bb4c705117e32bad39ce05446081336989ecb53808104855ac39
|
File details
Details for the file snakemake_logger_plugin_flowo-2.0.4-py3-none-any.whl.
File metadata
- Download URL: snakemake_logger_plugin_flowo-2.0.4-py3-none-any.whl
- Upload date:
- Size: 21.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb05fd8fc06f5ef182a72e07aa4ac33191d0b4365ea7f90fe69a90db5f24c301
|
|
| MD5 |
5107656c533a6dca9870f1e14183e582
|
|
| BLAKE2b-256 |
5b9ef13e74c16d717bd97a2d482c131758d625b2be46ae6ff5b3cdc55db37617
|