I built a DNS resolver from scratch in Rust – no DNS libraries

I built a DNS resolver that lets me use https://frontend.numa instead of localhost:5173 — auto-generated TLS certs, WebSocket passthrough, path routing. No mkcert, no nginx, no /etc/hosts.

Hacker NewsToolDesign & CreativeSource
0Sign in to voteCopy link

FL score

68

out of 100

Verdict

BUILD

high confidence

Competition

14

competitors found, mature market, funded players

Trend

No signal yet

A Rust DNS resolver simplifying local web development by eliminating mkcert/nginx/hosts, but faces a crowded market and high build complexity.

The pain

Developers struggle with complex local development setups involving TLS certificates, custom domains, and proxy configurations using tools like mkcert, Nginx, or /etc/hosts. These lead to debugging difficulties, steep learning curves, and general frustration, especially in modern microservice architectures.

The gap

While many tools exist (ngrok, Traefik, Caddy), they often introduce their own complexities (learning curves, external dependencies, cost, reliability issues). The gap is for an extremely simple, single-tool solution that handles auto-TLS, custom domains, and routing without requiring a patchwork of traditional networking tools.

Build angle

A self-contained, high-performance DNS resolver in Rust that intercepts and routes local traffic, automatically generating TLS certificates and providing simple path-based routing, aiming for a zero-config-like developer experience.

Strengths

  • Addresses a specific, frequently encountered pain point for developers (local dev setup complexity).
  • High technical skill demonstrated by building a DNS resolver from scratch in Rust.
  • Clear payment signals in the market for developer tools that save time and reduce friction.
  • The underlying problem (local dev complexity) is growing, making the solution more relevant over time.

Risks

  • Very high build complexity for a solo founder to achieve a production-ready, reliable system.
  • Extremely crowded market with many well-funded, established competitors (ngrok, Traefik, Caddy, Cloudflare Tunnel).
  • The 'from scratch in Rust' technical angle might not translate into a clear, compelling *user benefit* that justifies switching from existing, robust solutions.
  • Difficulty standing out and acquiring users in a mature market unless the simplicity and reliability are truly revolutionary.
  • Maintaining a low-level DNS resolver and proxy with modern web features could be a long-term burden for a solo developer.

Next steps

  1. Conduct in-depth user interviews with target developers to confirm how painful existing solutions are, specifically around mkcert, Nginx, and /etc/hosts, and if they'd pay to replace them.
  2. Build a very narrow MVP that solves *only one* critical aspect (e.g., auto-TLS for a single local service on a custom domain) and get it into a few users' hands for feedback.
  3. Validate the specific claim of 'no mkcert, no nginx, no /etc/hosts' is a strong enough differentiator to overcome switching costs from deeply embedded existing workflows.
  4. Explore integrating with existing developer ecosystems (e.g., Docker, VS Code extensions) to simplify adoption rather than asking developers to replace core infrastructure.

Questions about this idea?

FlyBot reads the scoring and gives you a second opinion on “I built a DNS resolver from scratch in Rust – no DNS libraries”.

Open FlyBot