From 5bc8da04a88687896f2f83a1c09d391bc43bc884 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stian=20Fr=C3=B8ystein?= <26657174+stianfro@users.noreply.github.com> Date: Tue, 28 Jul 2026 02:29:57 +0000 Subject: [PATCH] docs: add dashboard demo --- README.md | 22 +++++++++++------- .../assets/httping-dashboard.gif | Bin 1043342 -> 1043342 bytes 2 files changed, 14 insertions(+), 8 deletions(-) rename CleanShot 2026-07-28 at 11.24.17.gif => docs/assets/httping-dashboard.gif (99%) diff --git a/README.md b/README.md index 91b3b0e..e4f82a3 100644 --- a/README.md +++ b/README.md @@ -55,24 +55,28 @@ after it finishes. ## Usage -```text +```console +❯ httping --help +Ping an HTTP endpoint and report response latency + Usage: httping [OPTIONS] httping [OPTIONS] [URL] Commands: serve Show live probe statistics in a local web dashboard + help Print this message or the help of the given subcommand(s) Arguments: HTTP or HTTPS URL to probe Options: - -c, --count Number of probes to send. By default, probes continue until Ctrl-C - -i, --interval Minimum time between probe starts [default: 1s] - -t, --timeout Maximum time for DNS setup and for each probe [default: 10s] - --otlp Export OpenTelemetry metrics over OTLP HTTP/protobuf - --target-name Stable target name for exported metrics - -h, --help Print help - -V, --version Print version + -c, --count Number of probes to send. By default, probes continue until Ctrl-C + -i, --interval Minimum time between probe starts [default: 1s] + -t, --timeout Maximum time for DNS setup and for each probe [default: 10s] + --otlp Export OpenTelemetry metrics over OTLP HTTP/protobuf + --target-name Stable target name for exported metrics + -h, --help Print help + -V, --version Print version ``` Durations accept values such as `250ms`, `1s`, and `2m`. @@ -92,6 +96,8 @@ HTTPing selects a free local port and opens the dashboard in the default browser. The dashboard shows live summary cards, a latency chart, and recent probe results. It binds only to `127.0.0.1`. +![HTTPing live dashboard](docs/assets/httping-dashboard.gif) + Use `--no-open` to keep the browser closed, `--port` to select a fixed port, and `--history` to set the number of recent results kept in memory: diff --git a/CleanShot 2026-07-28 at 11.24.17.gif b/docs/assets/httping-dashboard.gif similarity index 99% rename from CleanShot 2026-07-28 at 11.24.17.gif rename to docs/assets/httping-dashboard.gif index 8ba0ab1f5cbdb4c4ea28a40d50c005ca776b528b..c5196917ededefe9df59530e9a4c9819762b007c 100644 GIT binary patch delta 1091 zcmZ`&e`u6t9Dkqp_pf_T?rxjjowv=M-rR0C&)Me2bezpfA=iwsn{33UQxmE+ELS6& z#uc%q#MmQJHX4V44TM>bL6kB~Ly}Z#Au>0IW6G#&aFWET&vR1$_1EY9e1CktKc4S9 zFwrnD(Qqa#5qWH-6x|KjzSnF8v|g+Y0qBfbL}d1fHlYV#sIKEfXP@i2%N$2ZHg!PY0r#0~PSEPkHNfst(e9Z8%gew0MB{Al& zlJ|LX=H`CK$4+dP|E>hh(xStvkDWOnA9)(d>&E3z*226%LrHfrecNNp?9Z(HQxyta zTdjnaA|{hiMjN4cGNt6_A$Fd&B-J$iYuHj*`$x*X1Z>wI$+k}_nUzR+R#uz67$IGt zmVka=pk56EkFQfV1V|bCxk>HgyLdjSUMvNM4y&Iv054roQ)R$y^Xk+pbWrKlo>IUM zF4gjCfCEihZ4mjF_iJDB(GPWN@9?4S@ahF@`G{5*1HDSSyhc8I<(gJfji^CQU*u{Z z#`GSZWmoH|dW22$g(YbJq+$>CS~|P`s_uzHeQ`wp+@14>GDab-sMg2WTW9t6*1&c< zw`5wl+^k?*@9NbmuL?sIJaP%d-Ku599?0xt-%}qy4?ycf!pe^7=PRGH?1BY zuJd1e%dmBBGwj}3YYT6%)nm8u&c1%qp7j$C8)>&Yb#QaPeQ*opr*rZY@-|DKwa-_< z*EwhRIN0~p1N*Lum^*y_d^Wjg=X0s-TGucS8|rk;@wFW~;@WEZHGv4x4q>NA@FD23 zKxA1cekdz4oB6<%T93dNzjICSgiSN9jVnkV?Nc0nTxrE23E-(GoD;m|P2J8H1;9Vv zcQz1z`knIfTz~v}D6Yp~A2a9HY9zlg?bu7Omv?`6x(N8g1?Ry=U?%P^j{t*7 Z_goZzxsr0XIpDhn-6Hqzx$cfE`v+n*K}rAs delta 1091 zcmZ`&e@v8R9DkpCe?0H6d(Yh+pm*mXaw@_Bo)`#2*%?~8Az?N<9ISz%=2j82q*#Ww zt2ILB7>{#hEOxWa*xaxl+nPVd)SAnst!SmRQ>7m*1aT_H!G2kh8qwg6hLR)+y>+FV8`|5zrGJ;3XG$;FkxWIu5WJ}^&= zB2vsx2VDCNa6RH`ijf@N{EX`Q0 z8uXH#>{}{F5SXFzH_rjb_Q@3W`HiG}xt28WzA^bM1z&$dp0AOqG|pn9hM&hZ<;N)5 z%>xz6es9*?)aUs5sm;pY<)9h1?1<*)=ME}I8<4ziO!;Un%=0Xq@D#AOytcys%qZVi zpunxwYIreX(s6a99*U=vYHki<=U8(>OR>L(ERDB)p#Bnv?e-(twh1-80x3@`T9XeW zr1G>v(695fn<3!Ib=rm?*~x!s)Oy7(o=s?1i-6%H+9!3u>sPd7F>w2wHn|cVl>6wD zD)^zrG^YyK-$<)N$p7j9{alQGxQo6mhPo@N=kcY(w5AO7ChPPWx%}l@w6GFU15{rS zYA4F{ZjohI>d9J!O^JoYS>J?e5B69(zyFHvjX`~3SpU?M^@r0&J}a%%NBNuQ^>^36 z_H%a0EPtt4%D3IqBW2Kg$!Fw?>5i2fCxw1dm2td=Y~f#Y8bOMjIo8`nYuWLH7Cckd zZPXy7eAHNo0!t^23m($IW_~js0}Z8(x#)jYII8F|A-LTPij%8<(TwSEUt+~oMu0s& zV)}UMRr8=2GB{%54D0xv@5~+(eAk3oP>-tgBQR%j92R=dT;+m5|q zb^CFh|Js{}tP7iA_sv*aMT0F~yH#}dWJe?sSb$)&uno{iIz8YIiKYL z|9H>YKmrZ_uiMz?l$2!q6W7CVJqG`fJ3p;P^6OKMy$E}G=Xa-*fIpmf9&7}rW1f;# cz)-?78^vF)COxeV_?`ieOZfNR_N-d+53gQDT>t<8