A Golang-based HTTP Proxy Server — built with intent, not vibes.
GoWrite is a lightweight, high-performance HTTP Proxy Server written in Go. While the software world drowns in AI-generated boilerplate and drag-and-drop abstractions, GoWrite is a deliberate act of engineering — built from first principles, with full control over every byte that passes through it.
This project exists because real engineers still write real software.
- 🔁 HTTP Request Forwarding — Intercepts and forwards client HTTP requests to target servers
- 🔒 HTTPS Tunneling — Full support for the
CONNECTmethod for encrypted traffic - 📋 Request/Response Logging — Visibility into all traffic flowing through the proxy
- ⚙️ Configurable — Tune port, timeouts, and other server settings via config
gowrite/
├── cmd/
│ └── proxy/
│ └── main.go # App entry point
│
├── internal/
│ ├── proxy/
│ │ ├── handler.go # Handles incoming client requests
│
├── cert/ # TLS certificates
├── go.mod
└── README.md
- Go
1.21+ - Git
git clone https://github.com/incodi404/gowrite.git
cd gowrite
go mod tidy
go run ./cmd/proxyConfigure your HTTP client or browser to use localhost:<PORT> as the proxy.
# Step 1 — Set environment
$env:CGO_ENABLED=0; $env:GOOS="linux"; $env:GOARCH="amd64"
# Step 2 — Build
go build -trimpath -ldflags="-s -w" -o proxy ./cmd/proxygo build -o gowrite ./cmd/proxy
./gowriteClient
│
▼
┌──────────────────────────┐
│ GoWrite Proxy │
│ │
│ handler.go │ ← Accepts & parses client request, Proxies HTTP requests upstream, Tunnels HTTPS via CONNECT, Streams response back to client, Logs method, URL, status, latency
└──────────────────────────┘
│
▼
Target Server
For plain HTTP, GoWrite parses the request, forwards it to the target, and pipes the response back.
For HTTPS, GoWrite handles the CONNECT method — establishing a raw TCP tunnel between client and server without inspecting encrypted payloads.
"The best way to understand a system is to build it."
In a world of vibe-coded frameworks and prompt-engineered repos, GoWrite is different. Understanding how a proxy works — how connections are tunneled, how headers are forwarded, how goroutines handle concurrent I/O — is worth infinitely more than scaffolding one with a prompt.
This is software written by someone who actually thought about it.
Dipankar Chowdhury — Backend Engineer (Security Focused) | GitHub · LinkedIn