Skip to main content

A unified PostgreSQL-based logging plugin and backend for Snakemake

Project description

Flowo 🚀

Welcome to Flowo – your real-time Snakemake workflow dashboard!

Demo page: flowo online

Documentation: flowo docs


✨ Features

  • Real-time Monitoring: Instant workflow updates via SSE.
  • 🔐 Authentication: Secure JWT-based registration and login.
  • 🚀 Efficient: Smart polling and debouncing for low network overhead.
  • 🔍 Search & Filter: Find workflows by name, tags, or user.
  • 🧩 Rule Focus: Filter jobs and update execution timeline by rule.
  • 🖼️ Result Preview: Preview output files directly in the browser.
  • 📋 Detailed Logs: Access comprehensive workflow and job logs.

🛠️ Workflows

Workflow

📊 Dashboard

Dashboard

🕹️ Jobs

DAG Jobs

🚦 Installation

1️⃣ Install the Snakemake Logger Plugin

pip install snakemake-logger-plugin-flowo

The PyPI package does not depend on Snakemake itself (it is expected in the environment where you run workflows). If you need Snakemake installed in the same environment—for example a minimal venv used only for the CLI—use:

pip install "snakemake-logger-plugin-flowo[snakemake]"

2️⃣ Install the Flowo web server (Single Image)

This method uses pre-built Docker images. For detailed instructions, please refer to the Quick Start guide.

Clone the repo and start the service:

git clone https://github.com/zhanghaomiao/flowo.git
cd flowo
cp env.example .env
# Edit .env:
# - set SECRET_KEY to a long random value and keep it stable
# - set FLOWO_WORKING_PATH to a host directory for FlowO data
docker compose up -d

login Open http://localhost:3100 to create your account.

token Generate a token in your profile settings to configure the logger plugin.

cli Copy and run the CLI config snippet from the dashboard to finish setup.


🚀 Usage

cd /path/to/flowo_project_dir
mkdir demo                # Create a demo project folder
cd demo
wget https://raw.githubusercontent.com/zhanghaomiao/flowo/refs/heads/main/tests/demos/Snakefile
# Run snakemake with flowo logger
snakemake \
    --logger flowo \
    --logger-flowo-name=your_project_name \
    --logger-flowo-tags="tagA,tagB,tagC"

👩‍💻 Developer Guide

If you want to contribute or build from source:

docker compose -f compose.dev.yml up --build
  • Gateway: http://localhost:3100 (Accesses both Frontend and Backend)
  • Backend API: http://localhost:8000
  • Frontend: http://localhost:5173

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.2.tar.gz (2.7 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.2-py3-none-any.whl (20.3 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for snakemake_logger_plugin_flowo-2.0.2.tar.gz
Algorithm Hash digest
SHA256 cf74cc8ab52af72c515817eb8ea9b5939a084fe28d710d1af6f8c5bb72235556
MD5 05948a64649e74cde953b47c4653b869
BLAKE2b-256 902fdf5da95e97e5cf8ffa0102acf058334d9d53a6b0abfe5bbb1bfecc115be3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for snakemake_logger_plugin_flowo-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e21619002bd274620e3892eee5ef6e6cce443743b4078d1b250d5d997f4d007f
MD5 30b7a8accfc591ca9e18709284e98129
BLAKE2b-256 39c52aa3983ab1a40e04547bfc7c4d870628fea208cd8cc255014bf81eafb86c

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