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.0.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.0-py3-none-any.whl (20.2 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for snakemake_logger_plugin_flowo-2.0.0.tar.gz
Algorithm Hash digest
SHA256 a70b6342c3aa38c7404e300f47a263b96a916a0dc06660df3152fac5c0e706a3
MD5 1b9c7aaae340f5bc2cdf59de07b62dfe
BLAKE2b-256 1115b8c56b72cca3145cdec2be44e9368eb4880063da2f0207b15388c8ae9143

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for snakemake_logger_plugin_flowo-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d236b4c5fbe766b6d85872eea32a26f70212d10c5d3add3bf24842eba1aef7bf
MD5 bc7f662d04537cb213980d9f95436706
BLAKE2b-256 09cc007b3d99b8e59d78dfce28c48e1c62a82aa07c89c0ca6d5aad8b8beb9a01

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