1993 called and they want their protocol back.
This is a node.js client for the Gopher protocol. This software is unreleased and incomplete, and very poorly tested against reality.
- RFC 1436
- The Overbite Project
- also available at gopher://gopher.floodgap.com/1/world
- gopher-node (ultra-bare-bones node.js Gopher server)
As a programmer I have spent a fair amount of time dealing with REST. So I thought it would be interesting to take a step back to a simpler time, and look at older forms of information organization and retrieval. There is an attractive simplicity to the Gopher model of organizing information. The protocol is simple enough to make writing a good client achievable, but has enough parsing to make it interesting, and it seems no one has written a good Gopher library in Node.js yet.
Also, I may have possibly been reading coverage of the recent "STUPID SHIT NO ONE NEEDS & TERRIBLE IDEAS HACKATHON".
I have just moved to London and I am looking for a full-time position: see my LinkedIn profile for the latest. Also please note that Node.js is not my primary programming language and I cannot provide extensive ecosystem advice and architectural direction at this time.
I'd prefer to work on something more relevant.
Major functionality:
- Support search queries
- Support following a link
- Support decoding files (e.g. binhex, uuencode)
Related work:
- Validation of general approach by writing a simple console-based Gopher client. (This client will not be part of the library proper.)
- A Gopher-HTTP gateway that doesn't look like it came out of the 1990s.
Internal design considerations:
- Revisit Type strategy
Quality:
- Test against real-world Gopher servers
- Detailed unit tests around Request objects
- Hardening against malicious Gopher servers (snerk)
Todon't:
- Support Gopher+