Gophper - A Modern Gopher Proxy for the Modern Age

As I mentioned yesterday, building Gopher applications is fun, but using gopherspace is actually pretty challenging unless you're a die-hard throwback geek. I have a super-secret gopher project (to be revealed tomorrow), but it's pretty useless if no one can actually see it. Sure, I could write up a blog post about how to download a gopher client, etc, etc, but that's just dumb.

There's a few gopher proxies out there – primarily floodgap and meulie – these are websites which you can use to browse gopher servers. But there's a few problems with these proxies. First, they're a little clunky. They're handy tools, but they're not really attractive, and the HTML they output is pretty old-fashioned. And most importantly, neither one is open-source.

I wanted a simple gopher proxy, using modern web standards, that was open-source and easy to install. So, I wrote gophper. You can see it in action at gopher.muffinlabs.com.

Here's the details:

  • It runs on PHP using Slim, which is a nifty lightweight application framework.
  • It caches requests for faster response times.
  • All of the rendering happens in the browser, which means someone could easily write a different backend.
  • It has a wacky theme switcher, so you can choose between a nice modern look, or an old-school monochrome CRT look.
  • If the user accesses a binary file, they can download it. If they click on an image, they can see it in the browser.
  • It can be integrated with Google Analytics.
  • You can restrict it to a single gopher server, so you can integrate it into your project without any fears of someone using your proxy for naughty tricks.

It's still a little rough around the edges, but it definitely works. I would love to see it used all over the place. But tomorrow I'll reveal where I'm using it.

Filed under: gopher, projects