{"slug": "knot", "name": "Knot", "category": "git", "category_name": "Git and code hosting", "description": "", "recommenders": 4, "commenters": 6, "warners": 1, "score": 2.961, "rising": 0.02, "first": "2025-11-20", "latest": "2026-10-30", "why": "Being able to host my git repos as a headless, data-only server is about as painless as self-hosting can get.", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 4, "neutral": 2, "compare": 0, "warn": 1}, "spark": [0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1], "listed": true, "loved": [], "caveat": "", "short_quote": "Being able to host my git repos as a headless, data-only server is about as painless as self-hosting can get.", "kind": "", "icon": true, "domain": "knot-dns.cz", "github_repo": null, "official_url": "https://www.knot-dns.cz", "pricing": "", "aliases": ["Knot", "Knot DNS", "knot"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 804915088, "item_id": 50307193, "url": "https://news.ycombinator.com/item?id=50307193", "by": "nerdypepper", "date": "2026-10-30", "version": null, "stance": "recommend", "quote": "already exists :)", "excerpt": "already exists :) its undocumented at the moment but you push over https as well. somebody has set up a git credential helper here: https://tangled.org/pds.dad/tangled-core/blob/feature%2Fgit-cred-tangled-helper/cmd/git-credential-tangled/main.go", "context": "", "use_case": "", "switched_from": "", "story": "The federated code forge"}, {"id": 770012593, "item_id": 48125787, "url": "https://news.ycombinator.com/item?id=48125787", "by": "h14h", "date": "2026-05-13", "version": null, "stance": "recommend", "quote": "Being able to host my git repos as a headless, data-only server is about as painless as self-hosting can get.", "excerpt": "I recently set up my own self-hosted \"Knot\", but haven't spent much time with other features: https://tangled.org/h14h.com/knot Overall, I think the platform looks really promising. The AtProto separation between Personal Data Servers, Relays, and AppViews seems like the appropriate set of trade-offs, IMO. Being able to host my git repos as a headless, data-only server is about as painless as self-hosting can get. Co", "context": "Self-hosts a Knot server", "use_case": "", "switched_from": "", "story": "Why I'm leaving GitHub for Forgejo"}, {"id": 767122625, "item_id": 47945164, "url": "https://news.ycombinator.com/item?id=47945164", "by": "ramon156", "date": "2026-04-29", "version": null, "stance": "recommend", "quote": "The fact you can always switch to a self-hosted knot is nice", "excerpt": "Tried tangled, quite like the idea! The fact you can always switch to a self-hosted knot is nice. I was looking to self-host forgejo but I didn't want to expose any SSH, and needing to be on a tailscale network just to develop also seemed flakey. I'll stay on codeberg for now and check out tangled from time to time, because I think this is a good use of ATProto", "context": "", "use_case": "self-hosted Tangled git server", "switched_from": "", "story": "Ghostty is leaving GitHub"}, {"id": 760216480, "item_id": 47513530, "url": "https://news.ycombinator.com/item?id=47513530", "by": "gucci-on-fleek", "date": "2026-03-24", "version": null, "stance": "recommend", "quote": "With Knot, you can just add ~8 lines to your config", "excerpt": "With Knot, you can just add ~8 lines to your config [0], copy the records to your registrar, and then you're done. [0]: https://www.knot-dns.cz/docs/3.5/singlehtml/index.html#automatic-zsk-management", "context": "", "use_case": "Authoritative DNS with DNSSEC", "switched_from": "", "story": "You Can Run a DNS Server"}]}], "caveats": [{"label": "", "summary": "", "quotes": [{"id": 783358737, "item_id": 48959921, "url": "https://news.ycombinator.com/item?id=48959921", "by": "sc68cal", "date": "2026-07-18", "version": null, "stance": "warn", "quote": "it only really reliably worked once I enabled lots of IPv4 NAT'ing", "excerpt": "I tried Tangled and tried to run my own Knot, the problem I had was I'd create a repository, have it get created correctly on my Knot, but then would never see any updates to the repo on Tangled itself. The main issue is that even though I had the knot with IPv6 connectivity, it only really reliably worked once I enabled lots of IPv4 NAT'ing and also created a dummy A record for the Knot. This is a known issue - http", "context": "", "use_case": "Self-hosted git server", "switched_from": "", "story": "Gleam Is Now on Tangled"}]}], "who": [{"by": "h14h", "context": "Self-hosts a Knot server", "url": "https://news.ycombinator.com/item?id=48125787", "date": "2026-05-13"}], "tags": [], "use_cases": ["self-hosted git server", "self-hosted tangled git server", "authoritative dns with dnssec", "authoritative dns"], "compared": [{"slug": "tangled", "name": "Tangled", "co": 4, "switched_from": 0, "switched_to": 0}, {"slug": "forgejo", "name": "Forgejo", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=50305573", "title": "The federated code forge", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48959143", "title": "Gleam Is Now on Tangled", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48121266", "title": "Why I'm leaving GitHub for Forgejo", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47948603", "title": "Tangled \u2013 We need a federation of forges", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47939579", "title": "Ghostty is leaving GitHub", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47453738", "title": "You Can Run a DNS Server", "mentions": 1}], "sentiment_by_month": {"2025-11": {"neutral": 1}, "2025-12": {}, "2026-01": {}, "2026-02": {}, "2026-03": {"recommend": 1}, "2026-04": {"recommend": 1, "neutral": 1}, "2026-05": {"recommend": 1}, "2026-06": {}, "2026-07": {"warn": 1}, "2026-08": {}, "2026-09": {}, "2026-10": {"recommend": 1}}, "versions": [], "version_unnamed": 0, "family_ref": null, "runs_on": null, "lines": [], "quotes": [{"id": 804915088, "item_id": 50307193, "url": "https://news.ycombinator.com/item?id=50307193", "by": "nerdypepper", "date": "2026-10-30", "version": null, "stance": "recommend", "quote": "already exists :)", "excerpt": "already exists :) its undocumented at the moment but you push over https as well. somebody has set up a git credential helper here: https://tangled.org/pds.dad/tangled-core/blob/feature%2Fgit-cred-tangled-helper/cmd/git-credential-tangled/main.go", "context": "", "use_case": "", "switched_from": "", "story": "The federated code forge"}, {"id": 783358737, "item_id": 48959921, "url": "https://news.ycombinator.com/item?id=48959921", "by": "sc68cal", "date": "2026-07-18", "version": null, "stance": "warn", "quote": "it only really reliably worked once I enabled lots of IPv4 NAT'ing", "excerpt": "I tried Tangled and tried to run my own Knot, the problem I had was I'd create a repository, have it get created correctly on my Knot, but then would never see any updates to the repo on Tangled itself. The main issue is that even though I had the knot with IPv6 connectivity, it only really reliably worked once I enabled lots of IPv4 NAT'ing and also created a dummy A record for the Knot. This is a known issue - http", "context": "", "use_case": "Self-hosted git server", "switched_from": "", "story": "Gleam Is Now on Tangled"}, {"id": 770012593, "item_id": 48125787, "url": "https://news.ycombinator.com/item?id=48125787", "by": "h14h", "date": "2026-05-13", "version": null, "stance": "recommend", "quote": "Being able to host my git repos as a headless, data-only server is about as painless as self-hosting can get.", "excerpt": "I recently set up my own self-hosted \"Knot\", but haven't spent much time with other features: https://tangled.org/h14h.com/knot Overall, I think the platform looks really promising. The AtProto separation between Personal Data Servers, Relays, and AppViews seems like the appropriate set of trade-offs, IMO. Being able to host my git repos as a headless, data-only server is about as painless as self-hosting can get. Co", "context": "Self-hosts a Knot server", "use_case": "", "switched_from": "", "story": "Why I'm leaving GitHub for Forgejo"}, {"id": 767185505, "item_id": 47949094, "url": "https://news.ycombinator.com/item?id=47949094", "by": "nerdypepper", "date": "2026-04-29", "version": null, "stance": "neutral", "quote": "sidecar services like knot can use service authentication", "excerpt": "> But federated authorization is one of the things ActivityPub doesn't define, and leaves it to us to figure out. this is the key bit, atproto has this. sidecar services like knot can use service authentication[0] for authenticated requests. [0]: https://atproto.com/guides/auth", "context": "", "use_case": "", "switched_from": "", "story": "Tangled \u2013 We need a federation of forges"}, {"id": 767122625, "item_id": 47945164, "url": "https://news.ycombinator.com/item?id=47945164", "by": "ramon156", "date": "2026-04-29", "version": null, "stance": "recommend", "quote": "The fact you can always switch to a self-hosted knot is nice", "excerpt": "Tried tangled, quite like the idea! The fact you can always switch to a self-hosted knot is nice. I was looking to self-host forgejo but I didn't want to expose any SSH, and needing to be on a tailscale network just to develop also seemed flakey. I'll stay on codeberg for now and check out tangled from time to time, because I think this is a good use of ATProto", "context": "", "use_case": "self-hosted Tangled git server", "switched_from": "", "story": "Ghostty is leaving GitHub"}, {"id": 760216480, "item_id": 47513530, "url": "https://news.ycombinator.com/item?id=47513530", "by": "gucci-on-fleek", "date": "2026-03-24", "version": null, "stance": "recommend", "quote": "With Knot, you can just add ~8 lines to your config", "excerpt": "With Knot, you can just add ~8 lines to your config [0], copy the records to your registrar, and then you're done. [0]: https://www.knot-dns.cz/docs/3.5/singlehtml/index.html#automatic-zsk-management", "context": "", "use_case": "Authoritative DNS with DNSSEC", "switched_from": "", "story": "You Can Run a DNS Server"}, {"id": 735862577, "item_id": 45991411, "url": "https://news.ycombinator.com/item?id=45991411", "by": "ralferoo", "date": "2025-11-20", "version": null, "stance": "neutral", "quote": "a fastmail blog about why they switched to knot (from PowerDNS)", "excerpt": "Haven't all these issues been related to use as a resolver rather than running as an authoritative server? Personally, I'd also expect that just by virtue that the majority of the internet's DNS is running on BIND that it's also the most battle tested of them all. But sure, point taken - I hadn't really considered from a security issue perspective. It just seemed odd to me that someone seemingly dabbling in running D", "context": "", "use_case": "authoritative DNS", "switched_from": "", "story": "Self-hosting DNS for no fun, but a little profit"}]}