<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/ada-a-zero-dependency-go-web-framework-with-net-http-nwz4cry4s" -->

---
title: Ada: A Zero-Dependency Go Web Framework with net/http
description: Ada is a new Go web framework built on top of the standard library's net/http, featuring zero external dependencies in its core module, a zero-allocation...
canonical: https://daily.dev/posts/ada-a-zero-dependency-go-web-framework-with-net-http-nwz4cry4s
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Ada: A Zero-Dependency Go Web Framework with net/http | daily.dev
og:description: Ada is a new Go web framework built on top of the standard library's net/http, featuring zero external dependencies in its core module, a zero-allocation...
og:url: https://daily.dev/posts/ada-a-zero-dependency-go-web-framework-with-net-http-nwz4cry4s
og:image: https://api.daily.dev/og/posts/nwz4cRy4S.png
og:image:alt: Ada: A Zero-Dependency Go Web Framework with net/http
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Ada: A Zero-Dependency Go Web Framework with net/http

**[Medium](https://daily.dev/sources/medium_js)** · 5 min read · 5 upvotes · 1 comments

## Summary

Ada is a new Go web framework built on top of the standard library's net/http, featuring zero external dependencies in its core module, a zero-allocation compressed radix trie router, and 100% compatibility with standard http.HandlerFunc and middleware signatures. Its standout feature is runtime middleware hot-swapping via Slot and Pipeline types, allowing middlewares to be replaced, disabled, or added on a live server without restarts. Optional sugar via ada.Context provides request binding and response helpers on an opt-in basis. The ecosystem includes separately versioned modules for CORS, logging, OpenTelemetry, rate limiting, auth (OAuth2, passkeys, TOTP), Swagger UI, and more. HTTP/2 and h2c are enabled by default, supporting ConnectRPC/gRPC on the same port.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://medium.com/@rytsh/ada-a-zero-dependency-go-web-framework-with-net-http-1455eeaf0e86>

## Questions this post answers

### What makes the Ada Go web framework different from other Go frameworks like chi or gin?

Ada stays 100% compatible with net/http: handlers are plain http.HandlerFunc, middlewares use the standard func(http.Handler) http.Handler signature, and path params use the stdlib r.PathValue. The core module has zero dependencies, and features like CORS, logging, auth, and telemetry live in separate opt-in modules rather than being bundled in.

_Comparing Go web framework options makes more sense with daily.dev surfacing how each one differs in practice._

### How do you hot-swap middleware in a running Go server without restarting it?

Ada's Slot and Pipeline types let you replace, disable, or remove middlewares on a live server with no restart and no re-registering routes. Under the hood it uses an atomic-pointer, copy-on-write, pre-built chain, costing about two atomic loads per request with zero allocations, useful for feature flags or switching auth providers from a control plane.

_Developers building config-driven Go services can track patterns like this on daily.dev._

### How fast is Ada's router compared to other Go HTTP routers?

Ada uses a full-path compressed radix trie router with zero heap allocations per lookup. According to the project's own benchmarks, a static route resolves in about 26 nanoseconds, though the framework's author recommends running independent benchmarks to verify performance in your own setup.

_Engineers evaluating Go routing performance can follow benchmark discussions like this on daily.dev._

## Community discussion

Top comments from developers on daily.dev.

**@dcorto** · 0 upvotes

> good to now It!

## Similar posts on daily.dev

- [Just Fucking Use Go](https://daily.dev/posts/just-fucking-use-go-5rdt9b0j2) · Lobsters · 93 upvotes · 14 comments
- [Build reliable multi-agent applications with ADK Go 2.0. Discover our new graph-based workflow engine, built-in human-in-the-loop, and dynamic orchestration](https://daily.dev/posts/build-reliable-multi-agent-applications-with-adk-go-2-0-discover-our-new-graph-based-workflow-engin-tzxz8bjsz) · Google Developers · 7 upvotes · 0 comments
- [Popular Go Web Frameworks: A Practical Guide for Developers](https://daily.dev/posts/popular-go-web-frameworks-a-practical-guide-for-developers-wi0jn69sw) · JetBrains · 28 upvotes · 0 comments
- [Solod v0.2: Networking, new targets, friendlier interop](https://daily.dev/posts/solod-v0-2-networking-new-targets-friendlier-interop-t1qiawvnc) · Anton Zhiyanov · 9 upvotes · 1 comments

---

Tags: [#golang](https://daily.dev/tags/golang)

[View this post on daily.dev](https://daily.dev/posts/ada-a-zero-dependency-go-web-framework-with-net-http-nwz4cry4s)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Ada: A Zero-Dependency Go Web Framework with net/http","url":"https://daily.dev/posts/ada-a-zero-dependency-go-web-framework-with-net-http-nwz4cry4s","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/ada-a-zero-dependency-go-web-framework-with-net-http-nwz4cry4s"},"datePublished":"2026-07-19T07:35:35.647Z","dateModified":"2026-09-14T08:56:54.105Z","description":"Ada is a new Go web framework built on top of the standard library's net/http, featuring zero external dependencies in its core module, a zero-allocation...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/0a616b555af8d2563b2e7067032f9f83?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/0a616b555af8d2563b2e7067032f9f83?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Medium","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Medium","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/medium","url":"https://daily.dev/sources/medium_js"},"commentCount":1,"discussionUrl":"https://daily.dev/posts/ada-a-zero-dependency-go-web-framework-with-net-http-nwz4cry4s","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":5},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":1}],"keywords":"golang","timeRequired":"PT5M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Medium","item":"https://daily.dev/sources/medium_js"},{"@type":"ListItem","position":3,"name":"Ada: A Zero-Dependency Go Web Framework with net/http"}]}
{"@context":"https://schema.org","@type":"WebPage","@id":"https://daily.dev/posts/ada-a-zero-dependency-go-web-framework-with-net-http-nwz4cry4s","comment":[{"@type":"Comment","text":"good to now It!","datePublished":"2026-07-23T12:37:45.846Z","url":"https://daily.dev/posts/nwz4cRy4S#c-qjjrElTPV","author":{"@type":"Person","name":"David C.","url":"https://daily.dev/dcorto","image":"https://media.daily.dev/image/upload/s--EPnTZZFw--/f_auto/v1784418453/avatars/avatar_tT4BuvxaHeTxyE5fH41si?_a=BAMAMicg0"}}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/ada-a-zero-dependency-go-web-framework-with-net-http-nwz4cry4s#faq","mainEntity":[{"@type":"Question","name":"What makes the Ada Go web framework different from other Go frameworks like chi or gin?","acceptedAnswer":{"@type":"Answer","text":"Ada stays 100% compatible with net/http: handlers are plain http.HandlerFunc, middlewares use the standard func(http.Handler) http.Handler signature, and path params use the stdlib r.PathValue. The core module has zero dependencies, and features like CORS, logging, auth, and telemetry live in separate opt-in modules rather than being bundled in. Comparing Go web framework options makes more sense with daily.dev surfacing how each one differs in practice."}},{"@type":"Question","name":"How do you hot-swap middleware in a running Go server without restarting it?","acceptedAnswer":{"@type":"Answer","text":"Ada's Slot and Pipeline types let you replace, disable, or remove middlewares on a live server with no restart and no re-registering routes. Under the hood it uses an atomic-pointer, copy-on-write, pre-built chain, costing about two atomic loads per request with zero allocations, useful for feature flags or switching auth providers from a control plane. Developers building config-driven Go services can track patterns like this on daily.dev."}},{"@type":"Question","name":"How fast is Ada's router compared to other Go HTTP routers?","acceptedAnswer":{"@type":"Answer","text":"Ada uses a full-path compressed radix trie router with zero heap allocations per lookup. According to the project's own benchmarks, a static route resolves in about 26 nanoseconds, though the framework's author recommends running independent benchmarks to verify performance in your own setup. Engineers evaluating Go routing performance can follow benchmark discussions like this on daily.dev."}}]}
```

