Status
In active development
A lightweight reverse proxy and static file server written from scratch in Go as an exploration of HTTP parsing, TCP handling, and production-minded server design.
Dreamproxy is a systems-learning project with real product constraints: explicit protocol handling, predictable routing behavior, and a clean path toward production hardening. Every feature is built to expose internals, not hide them.
In active development
Systems design and implementation
Go, raw TCP sockets, custom HTTP parsing, file I/O
May 2026
Full ownership of request lifecycle
Manual parsing of start-line, headers, and body framing
DoneBackend service composition
Forwarding logic with upstream target mapping
DoneUnified edge-like behavior
Path resolution, MIME detection, and fallback handling
DoneLower upstream pressure
In-memory key strategy + invalidation policy
PlannedProblem: Small parsing mistakes can break interoperability across clients.
Solution: Implemented strict parsing phases with explicit malformed-request handling.
Tradeoff: More verbose parsing code and larger test surface.
Problem: Forwarding requires preserving request intent while avoiding header corruption.
Solution: Defined a predictable header pass-through strategy and controlled overrides.
Tradeoff: Requires careful maintenance as features expand.
Problem: Connection-level failures can cascade if not isolated.
Solution: Scoped errors per request path with structured logging around boundaries.
Tradeoff: Additional complexity in handler lifecycle management.
Single-pass parsing stages
reduces ambiguous state transitions during request handling
Explicit error boundaries
prevents failures from leaking across independent requests
Cache + compression roadmap
targets lower latency and reduced upstream load