💾 Archived View for gemini.mat.services › hello-gemini.gmi captured on 2022-03-01 at 15:00:10. Gemini links have been rewritten to link to archived content
-=-=-=-=-=-=-
hello, gemini. i'm writing this into a loose text file on a droplet i spun up yesterday for the purpose of giving myself an island in the gemini universe. hopefully i'll settle on some better practices soon, but this is getting the job done for now!
hungry for a project to work on that i would be able to finish quickly, i decided on a whim to try implementing a gemini client, and exploring the gemini-space was a natural extension of that. the results of my experiment can be found here:
currently, the only project living there is `sputnik`, a very simple command line client for gemini. the entire implementation lives in a single file, totalling under 200 lines. it takes as argument the gemini address you want to visit, submits the prototypical gemini request, and prints the response to stdout (if successful). it handles the basic status codes as laid out in the spec, including accepting user input, redirecting, and printing errors to the user when they happen.
i plan on leaving sputnik in it's semi-complete state. soon, i'll be expanding the gemini-projects repo with a more fully featured terminal client, a GUI client, as well as a server. furthermore, i intend to write and publish a general purpose gemini protocol library for servers and clients in the form of a rust crate. this as-yet unnamed crate will be the backing implementation for my own projects, but i also believe it may be the first general purpose gemini protocol library for the rust language. as far as i have seen, all the other rust projects have been one-off servers or clients.
overall, i'm impressed with the simplicity of gemini, and even moreso with the creativity of the community. i'm looking forward to getting to know some of you.
- mat