ttserver is a simple TCP server allowing to:
- serve content over custom connection handlers:
gopher protocols' handlers included
- a basic page renderer supporting:
- Go templates
- fetching remotes contents
- define generic routes with regex
- fetch remote contents (json, html, feeds) and display them in pages
- run cron tasks to create/update pages
- server content over TLS with the support of the ACME protocol (Let’s Encrypt)
- gather stats about the server on a
Prometheus compatible endpoint, /metrics
- handle PROXY protocol
I really like the idea to be able to have a Gopher
and a finger spaces to serve contents.
If you want to know more about my motivations:
I tried to have both running for some times now but it’s not easy to find tools that support all the above features.
So I wrote ttserver.
What have I learned ?
My skills in Go improved a lot (Go routines, templates, etc.).
And I’ve started to use
I also wrote a GitHub Actions to handle checksums and signatures: