Skip to content

Commit 9c7e360

Browse files
committed
add badges and a banner to the README
1 parent 0a6728d commit 9c7e360

File tree

2 files changed

+19
-10
lines changed

2 files changed

+19
-10
lines changed

.github/banner.webp

284 KB
Binary file not shown.

README.md

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,20 @@
1-
TODO: badges
2-
3-
TODO: graphic
4-
5-
# Httptap
6-
7-
Inspect HTTP requests and responses made by linux applications
1+
<h1 align="center">
2+
<img src="./.github/banner.webp" alt="httptap" height="250px">
3+
<br>
4+
httptap
5+
</br>
6+
</h1>
7+
<h4 align="center">Application HTTP request inspector</h4>
8+
<p align="center">
9+
<a href="https://pkg.go.dev/github.com/monasticacademy/httptap"><img src="https://img.shields.io/badge/go.dev-reference-007d9c?logo=go&logoColor=white&style=flat-square" alt="Documentation"></a>
10+
<a href="https://github.com/monasticacademy/httptap/actions"><img src="https://github.com/monasticacademy/httptap/workflows/Test/badge.svg" alt="Build Status"></a>
11+
</p>
12+
<br>
13+
14+
View the HTTP and HTTPS requests made by a linux program:
815

916
```shell
10-
$ httptap curl https://monasticacademy.org
17+
$ httptap -- curl https://monasticacademy.org
1118
---> GET https://monasticacademy.org/
1219
<--- 308 https://monasticacademy.org/ (15 bytes)
1320
```
@@ -20,9 +27,11 @@ httptap -- python -c "import requests; requests.get('https://monasticacademy.org
2027
<--- 200 https://www.monasticacademy.org/ (5796 bytes)
2128
```
2229

23-
It works by running the requested subprocess in a network namespace, and intercepting all traffic, in the spirit of a transparent proxy, but on a per-application level. No daemon is needed or used, and no iptables rules are created or assumed. You do not need to be the root user, nor run `httptap` in any kind of priveleged mode.
30+
If you can run `<command>` on your shell, you can likely also run `httptap -- <command>` and view the HTTP requests made by the command, as well as their responses.
31+
32+
It works by running the requested subprocess in a network namespace, and proxying all traffic. It creates a certificate authority on the fly in order to terminate TLS connections initiated by the subprocess. They are decrypted and then proxied to their intended destination.
2433

25-
The `httptap` application is a static Go binary that runs without dependencies. No modifications at all are made to the system, except within isolated, application-scoped namespaces. You need access to `/dev/net/tun`, which is the default on some linux systems, and can be given on others with
34+
The `httptap` application is a static Go binary that runs without dependencies. No global modifications are made to the system; no daemon is needed or used; no iptables rules are created or assumed. You do not need to be the root user, nor run `httptap` in any kind of priveleged mode.
2635

2736
```shell
2837
sudo chmod a+rw /dev/net/tun

0 commit comments

Comments
 (0)