Skip to content
jvanbuelPublic

About

Flowrs is a TUI application for Apache Airflow that allows you to monitor, inspect and trigger Airflow DAGs from the comforts of your terminal.

Resources

Code of conduct

Stars

174 stars

Watchers

2 watching

Forks

Repository files navigation

flowrs_logo

CI Crates.io Downloads License MSRV Built With Ratatui

Flowrs is a TUI application for Apache Airflow. It allows you to monitor, inspect and manage Airflow DAGs from the comforts of your terminal. It is build with the ratatui library.

flowrs demo

Installation

You can install flowrs via Homebrew if you're on macOS / Linux / WSL2:

brew install flowrs

or with uv on macOS (Apple silicon and Intel) and Linux x86_64:

uv tool install flowrs

You can also download the binary directly from GitHub:

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/jvanbuel/flowrs/releases/latest/download/flowrs-tui-installer.sh | sh

Alternatively, you can build flowrs from source with cargo:

cargo install flowrs-tui --locked

Usage

Managed Airflow services

The easiest way to user flowrs is with a managed Airflow service. The currently supported managed services are:

  • Conveyor
  • Amazon Managed Workflows for Apache Airflow (MWAA)
  • Google Cloud Composer
  • Astronomer

To enable a managed service, run flowrs config enable -m <service>. This will add the configuration for the managed service to your configuration file, or prompt you for the necessary configuration details. On startup flowrs will then try to find and connect to all available managed service's Airflow instances.

Note that for Astronomer, you need to set the ASTRO_API_TOKEN environment variable with your Astronomer API token (Organization, Workspace or Deployment) to be able to connect to the service.

Custom Airflow instances

If you're self-hosting an Airflow instance, or your favorite managed service is not yet supported, you can register an Airflow server instance with the flowrs config add command:

flowrs config add demo

This creates an entry in your configuration file at $XDG_CONFIG_HOME/flowrs/config.toml (following the XDG Base Directory Specification, which defaults to ~/.config/flowrs/config.toml). For backwards compatibility, flowrs also reads from ~/.flowrs if the XDG location doesn't exist. If you have multiple Airflow servers configured, you can easily switch between them in flowrs configuration screen.

Flowrs supports authenticating with HTTP Basic Auth, bearer tokens, or a session cookie. When selecting the bearer token option, you can either provide a static token or a command that generates a token. The cookie option lets you either paste a Cookie header value copied from an authenticated browser session (for example session=abc123) or provide a command that prints the cookie, which flowrs re-runs to refresh a rotating cookie; the value is sent verbatim on every request. This is useful when programmatic auth is only possible by logging in through the browser and copying the cookie out. To avoid leaking the cookie, flowrs refuses to send it over plaintext HTTP unless the endpoint is a loopback address (for example a port-forwarded http://localhost:8080).

Themes

Flowrs ships with six themes, including four Catppuccin flavors. The active theme is configured with flowrs config --theme <theme>:

Theme Description
auto Detects your terminal background and picks dark or light (default)
dark Dark theme
light Light theme
catppuccin-latte Catppuccin Latte (light)
catppuccin-frappe Catppuccin Frappé (medium-dark)
catppuccin-macchiato Catppuccin Macchiato (dark)
catppuccin-mocha Catppuccin Mocha (darkest)

About

Flowrs is a TUI application for Apache Airflow that allows you to monitor, inspect and trigger Airflow DAGs from the comforts of your terminal.

Resources

Code of conduct

Stars

174 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages