mirror of
https://git.sr.ht/~adnano/go-gemini
synced 2025-11-08 14:48:42 +01:00
Go implementation of the Gemini protocol
| certificate | ||
| examples | ||
| tofu | ||
| .build.yml | ||
| client.go | ||
| doc.go | ||
| fs.go | ||
| gemini.go | ||
| go.mod | ||
| go.sum | ||
| handler.go | ||
| io.go | ||
| LICENSE | ||
| LICENSE-GO | ||
| middleware.go | ||
| mux_test.go | ||
| mux.go | ||
| query.go | ||
| README.md | ||
| request_test.go | ||
| request.go | ||
| response_test.go | ||
| response.go | ||
| server.go | ||
| status.go | ||
| text.go | ||
go-gemini
Package gemini implements the Gemini protocol in Go. It provides an API similar to that of net/http to facilitate the development of Gemini clients and servers.
Compatible with version v0.16.0 of the Gemini specification.
Usage
import "git.sr.ht/~adnano/go-gemini"
Note that some filesystem-related functionality is only available on Go 1.16 or later as it relies on the io/fs package.
Examples
There are a few examples provided in the examples directory. To run an example:
go run examples/server.go
Contributing
Send patches and questions to ~adnano/go-gemini-devel.
Subscribe to release announcements on ~adnano/go-gemini-announce.
License
go-gemini is licensed under the terms of the MIT license (see LICENSE). Portions of this library were adapted from Go and are governed by a BSD-style license (see LICENSE-GO). Those files are marked accordingly.