arch linux
yay -S flow-network-monitor-binhomebrew
brew install programmersd21/flow/flowgo
go install github.com/programmersd21/flow/cmd/flow@latestmake sure $(go env gopath)/bin is on your path, otherwise your shell
won't find the new binary (and a stale copy elsewhere can shadow it ,
make install warns about both).
--version reports the real release for every install method: builds carry an
injected version, and go install falls back to the module version recorded in
the binary.
or download a binary from releases.
flow # hero view (default)
flow --tiny # single line, for status bars
flow --mini # graphs only
flow --compact # condensed numbers
flow --json # one JSON snapshot, then exit
flow --json-stream # newline-delimited JSON, continuous
flow --theme nord --window 5m # override theme and time window
flow --no-anim # disable animations (reduced motion)
flow --format '↓ {{.Down}} ↑ {{.Up}}' # templated text outputwhen stdout is not a tty (a pipe, a script, a status bar) flow prints a
single plain line instead of starting the tui, so it is safe to pipe.
set -g status-right "#(flow --tiny --no-color)"all of them can consume flow --json-stream or a fixed-width --format line.
see docs/integrations.md for copy-paste snippets.
- mirrored braille waveform: download above the axis, upload below, rendered on a 2x4-dot braille canvas with a smooth interpolated crest
- big block digits: 5x5 bitmap hero numbers (timr-tui technique), chunky enough to read at a glance, tabular so they never jitter
- calm motion: spring-driven value easing, an idle breathing pulse, a burst ripple, a pulsing link dot, a 180ms theme crossfade, and a skippable launch sequence, all disabled by
--no-anim - time windows:
wcycles 1m / 5m / 15m / 1h / 24h - scale modes:
scycles auto / linear / sqrt;gtoggles the faint midpoint gridline - snapshot export:
swrites the current frame as.ansiand.txt - 11 built-in themes:
default,nord,dracula,gruvbox,forest,monochrome,catppuccin,tokyo-night,rose-pine,kanagawa,ansi - custom toml themes: load custom color schemes from your config directory (see docs/themes.md)
- text streams first:
--json,--json-stream, and--format(see docs/json.md) - no telemetry: the only network call flow makes is a latency probe to your configured ping target
- cross-platform: linux, macos, and windows, on amd64 and arm64, built without cgo
- pipes cleanly: not a tty means a single plain line, so status bars never receive escape codes
| key | action |
|---|---|
q |
quit |
m |
cycle view mode |
d |
cycle display filter (both / down / up) |
t |
theme selector |
n |
network processes inspector |
i |
cycle network interface |
i |
interface details |
c |
cycle unit scale (auto / kb/s / mb/s / gb/s) |
b |
toggle bits/sec vs bytes/sec |
+ / - |
adjust sampling interval |
p |
pause / resume sampling |
r |
reset peak counters (press twice) |
g |
open github repository in browser |
u |
open github issues in browser |
x |
open github discussions in browser |
$ / v |
sponsor / donate on github |
? |
help menu |
w |
cycle time window (1m / 5m / 15m / 1h / 24h) |
s |
export snapshot (.ansi + .txt) |
s |
cycle graph scale (auto / linear / sqrt) |
g |
toggle gridlines |
created automatically on first run:
Linux ~/.config/flow/config.toml
macOS ~/Library/Application Support/flow/config.toml
Windows %APPDATA%\flow\config.toml
refresh = "100ms"
theme = "default"
unit = "auto"
interface = "auto"
bits = false
ping_target = "1.1.1.1"
no_anim = false # disable animations| variable | effect |
|---|---|
no_color |
disable all ansi color |
flow_reduce_motion=1 |
reduced motion, same as --no-anim |
flow_config |
config file path (default: xdg config dir) |
flow_data |
directory for persisted daily totals (default: xdg config dir) |
flow_glyphs |
force braille, blocks, or ascii waveform glyphs |
make check
make test
make buildmit
