From 9b9518ed27161a95afeceb7668795431836cf66b Mon Sep 17 00:00:00 2001 From: ImSavsis Date: Sun, 19 Jul 2026 20:48:41 +0500 Subject: [PATCH] docs: add llms.txt --- llms.txt | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 llms.txt diff --git a/llms.txt b/llms.txt new file mode 100644 index 0000000..788b688 --- /dev/null +++ b/llms.txt @@ -0,0 +1,17 @@ +# savdoh + +> Zero-dependency DNS-over-HTTPS resolver for Python. Ships a simple resolve() function and an optional socket.getaddrinfo patch that makes any existing Python networking code (requests, aiohttp, anything on sockets) resolve over DoH transparently. + +Pure standard library, uses http.client and ssl for the HTTPS leg. Falls back across Cloudflare, Google, and Quad9 if one is unreachable. Typed (py.typed), supports Python 3.10 through 3.13. + +## Docs + +- [README](https://github.com/ImSavsis/savdoh/blob/master/README.md): install, usage, feature list +- [src/savdoh/resolver.py](https://github.com/ImSavsis/savdoh/blob/master/src/savdoh/resolver.py): core resolve logic with provider fallback and caching +- [src/savdoh/patch.py](https://github.com/ImSavsis/savdoh/blob/master/src/savdoh/patch.py): socket.getaddrinfo monkeypatch +- [src/savdoh/wire.py](https://github.com/ImSavsis/savdoh/blob/master/src/savdoh/wire.py): minimal DNS wire format encode/decode + +## Notes + +- No DNSSEC validation +- Assumes DNS responses fit in a single HTTPS body, no multi-message TCP-style fragmentation handling