Announcing go-gemini, a Go library implementing the Gemini protocol
Adnan Maolood
me at adnano.co
Sun Oct 25 02:33:23 GMT 2020
Hello! I wrote a Gemini library for Go similar to net/http.
https://sr.ht/~adnano/go-gemini
On the client side, it provides an easy-to-use TOFU implementation using
a list of known hosts (located at $XDG_DATA_HOME/gemini/known_hosts by
default). It also makes it easy for clients to provide client-side
certificates when servers request them.
TOFU is implemented following these guidelines:
https://drewdevault.com/2020/09/21/Gemini-TOFU.html
Drew and I have since agreed to conform to using
$XDG_DATA_HOME/gemini/known_hosts (or ~/.local/share/gemini/known_hosts
if $XDG_DATA_HOME is not set) as the default known hosts path, to
make it consistent between clients.
On the server side, it supports handling different schemes and hosts
(including wildcard hostnames). There is also support for parsing
gemtext and outputting it as HTML, which is useful for HTTP to Gemini
proxies.
Enjoy!
More information about the Gemini
mailing list