Skip to main content

Airflow 3.x plugin that visualizes Dag execution times as a Gantt chart

Project description

airflow-dag-gantt

Airflow 3.x plugin that visualizes Dag execution times as a 24-hour Gantt chart.

Shows average/median start and end times for each Dag based on recent successful runs. Uses react_apps to render natively within the Airflow UI.

Requirements

  • Python >= 3.10
  • Apache Airflow >= 3.0.0

Installation

pip install airflow-dag-gantt

Or install from source:

pip install git+https://github.com/choo121600/airflow-dag-gantt.git

Configuration

No additional configuration required. The plugin uses the logged-in user's session to call Airflow's REST API (/api/v2/) directly from the browser.

After installation, restart the webserver:

sudo systemctl restart airflow-webserver

Features

  • 24h timeline Gantt chart with responsive width (ResizeObserver)
  • Mean/Median toggle for execution time statistics
  • Run count selector: 10, 25, 50, 100, or All
  • Prefix-based color grouping: Dag ID prefix별 자동 색상 구분
  • Tag-based filtering: tag 버튼 토글로 Dag 필터링 (12개 미리보기 + 확장)
  • Text search: Dag name 및 tag 통합 검색
  • Filter reset: 모든 필터 초기화 버튼
  • Hover tooltips: mean/median start/end, duration, run count, tags
  • Browser timezone: 시간축이 브라우저 로컬 시간대 기준으로 표시

UI Development

cd ui
pnpm install
pnpm dev          # Dev server at localhost:5173
pnpm build        # Build UMD bundle to dist/main.umd.cjs

After building, copy the bundle:

cp ui/dist/main.umd.cjs src/airflow_dag_gantt/dist/

Tech Stack

  • Frontend: React 19, TypeScript, ChakraUI v3, Vite (UMD build)
  • Backend: FastAPI (Airflow plugin, static file serving only)
  • Integration: Airflow 3.x react_apps plugin API

License

Apache License 2.0

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

airflow_dag_gantt-0.2.0.tar.gz (74.3 kB view details)

Uploaded Source

Built Distribution

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

airflow_dag_gantt-0.2.0-py3-none-any.whl (73.6 kB view details)

Uploaded Python 3

File details

Details for the file airflow_dag_gantt-0.2.0.tar.gz.

File metadata

  • Download URL: airflow_dag_gantt-0.2.0.tar.gz
  • Upload date:
  • Size: 74.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for airflow_dag_gantt-0.2.0.tar.gz
Algorithm Hash digest
SHA256 23ad606f59697914725c764b241f639dba07b47064fd536e49d1bb85a725f647
MD5 8e7b0f916dc0c28067229bb695e58853
BLAKE2b-256 1b75d8d0260a85132c3be997c0c7f008ecb293e7d0c77776b565b249848c39d9

See more details on using hashes here.

File details

Details for the file airflow_dag_gantt-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: airflow_dag_gantt-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 73.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for airflow_dag_gantt-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b763dd9b93e44945f0837c5b2371cce3ec7dc239e8f68fc0815a03838218f048
MD5 6101f9b22de146f0d000d969d89fcc80
BLAKE2b-256 21c13a363f28a3da712dbc02caae3b41a3c22d62759017a9d7c5a1ff8fa2ad33

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