2-5-2026 What Ever since I learned about the gopher protocol a couple months ago I've been extremely fascinated. So much so that I've decided to build my own gopher client. The protocol is dead simple: plain text, no encryption, no compression, easy-to-parse structure. I'm not expecting my client be the best or even compete with what's already available--it's just for fun. I'm writing my client in C because that is the language I know best. Why I'm mainly doing this because I read the RFC and thought to my self "I could do that!" I'm not kidding about the protocol being 'dead simple,' it really is. Current State My client currently has the following capabilities: - Resolve the domain of a given URL - Send a request to a domain for a given URL's resource - Parse gopher responses - Print gopher resonses in a pretty format I intend to implement the following features: - Interactive TUI (similar to lynx) - Output styling (similar to user-agent style sheets) The client currently uses a multi-threaded approach to read and parse responses simultaneously. This is definitely overkill for a gopher client, but maybe someday other slower protocols will be supported. BTW I do not and will not use AI in programming or any other aspect of my life. I feel I need to say that and make it known that my work is my own.