httptap

A terminal UI that lets you inspect live HTTP traffic on a process without reaching for Wireshark.

Files

namesizelast change
.editorconfig413 B
.github/FUNDING.yml208 B
.github/ISSUE_TEMPLATE/bug.md662 B
.github/pull_request_template.md706 B
.github/workflows/ci.yml1.8 KB
.github/workflows/release.yml0.9 KB
.golangci.yml0.9 KB
.goreleaser.yaml1.3 KB
CHANGELOG.md3.1 KB
cmd/httptap/cmd/completion.go1.3 KB
cmd/httptap/cmd/doctor.go1.8 KB
cmd/httptap/cmd/export.go2.0 KB
cmd/httptap/cmd/man.go1.2 KB
cmd/httptap/cmd/replay.go1.6 KB
cmd/httptap/cmd/root.go1.5 KB
cmd/httptap/cmd/run.go1.9 KB
cmd/httptap/cmd/version.go1.1 KB
cmd/httptap/main.go3.2 KB
CONTRIBUTING.md2.8 KB
Dockerfile0.7 KB
docs/architecture.md11.2 KB
docs/bpf-notes.md6.4 KB
docs/roadmap.md4.1 KB
go.mod412 B
internal/bench/export_bench_test.go1.4 KB
internal/bench/parser_bench_test.go1.5 KB
internal/bench/tui_bench_test.go1.4 KB
internal/export/curl/curl_test.go1.4 KB
internal/export/curl/curl.go2.0 KB
internal/export/har/har_test.go1.5 KB
internal/export/har/har.go2.9 KB
internal/export/markdown/markdown_test.go1.4 KB
internal/export/markdown/markdown.go2.0 KB
internal/export/raw/raw.go1.7 KB
internal/filter/expr/eval_test.go1.4 KB
internal/filter/expr/eval.go2.6 KB
internal/filter/expr/parser_test.go1.3 KB
internal/filter/expr/parser.go3.2 KB
internal/filter/filter_test.go1.5 KB
internal/filter/filter.go1.7 KB
internal/parser/content/decoder.go2.6 KB
internal/parser/http.go2.7 KB
internal/parser/http1/chunked_test.go1.9 KB
internal/parser/http1/chunked.go3.0 KB
internal/parser/http1/headers_test.go2.3 KB
internal/parser/http1/headers.go3.6 KB
internal/parser/http1/request_test.go2.1 KB
internal/parser/http1/request.go2.7 KB
internal/parser/http1/response_test.go1.9 KB
internal/parser/http1/response.go2.5 KB
internal/parser/http2/frame_test.go2.0 KB
internal/parser/http2/frame.go3.9 KB
internal/parser/http2/hpack_test.go1.5 KB
internal/parser/http2/hpack.go2.2 KB
internal/parser/parser_test.go2.4 KB
internal/parser/parser.go3.1 KB
internal/source/file_test.go1.5 KB
internal/source/file.go2.3 KB
internal/source/source.go2.0 KB
internal/source/stdin.go1.6 KB
internal/source/unix/reader_test.go2.0 KB
internal/source/unix/reader.go2.8 KB
internal/testdata/filter/samples.txt0.4 KB
internal/testdata/har/example-har.json1.2 KB
internal/testdata/http1/chunked-response.txt0.3 KB
internal/testdata/http1/folded-headers.txt0.3 KB
internal/testdata/http1/simple-request.txt0.2 KB
internal/testdata/http2/frames.bin0.2 KB
internal/tracer/tracer.bpf.c3.0 KB
internal/tracer/tracer.go5.1 KB
internal/tui/app_test.go1.9 KB
internal/tui/app.go3.2 KB
internal/tui/keys/help.go1.2 KB
internal/tui/keys/keys.go1.7 KB
internal/tui/model.go4.6 KB
internal/tui/theme/palette.go1.8 KB
internal/tui/theme/styles.go1.6 KB
internal/tui/view/detail/detail_test.go1.3 KB
internal/tui/view/detail/detail.go2.4 KB
internal/tui/view/detail/tabs.go1.5 KB
internal/tui/view/filterbar/filterbar_test.go1.2 KB
internal/tui/view/filterbar/filterbar.go1.9 KB
internal/tui/view/list/item.go2.1 KB
internal/tui/view/list/list_test.go1.6 KB
internal/tui/view/list/list.go2.6 KB
internal/tui/view/request/body_test.go1.5 KB
internal/tui/view/request/body.go2.5 KB
internal/tui/view/request/headers.go1.4 KB
internal/tui/view/response/timing.go1.9 KB
internal/tui/view/statusbar/statusbar.go1.4 KB
internal/tui/viewport/viewport.go2.0 KB
LICENSE1.1 KB
Makefile1.1 KB
README.md3.4 KB
SECURITY.md1.3 KB

README

A little command-line X-ray for HTTPS traffic. Written because I kept needing to know what some Go binary was POSTing and didn’t want to set up a MITM proxy for a ten-second question.

Recent commits

  • a3f8b2c parser: handle chunked transfer-encoding edge case
  • 1b4d9e0 tui: viewport scroll keybindings
  • f8e0a12 tracer: switch to cilium/ebpf for arm64 support
  • c0912ad parser: normalise header casing before display
  • 44bb1d7 cmd: --pid can be repeated, attach to several procs
  • 7d2e9c5 tui: show request timings and status colour
  • 9a1c6f3 tracer: attach to Go crypto/tls Write
  • 2e5b8d0 initial uretprobe on openssl SSL_read/SSL_write
  • e01aa34 first commit