Gopher and Gemini: The Small Web That Survived
The modern web is a bloated mess of JavaScript, trackers, and cookie banners. Two older protocols never went that direction — and they’re still alive.
Gopher — The Pre-Web Internet
Gopher was created in 1991 at the University of Minnesota. It briefly rivaled HTTP before losing the protocol wars in 1993, when the university announced licensing fees for its server software. HTTP was free. Gopher wasn’t. You know how that ended.
The protocol itself is absurdly simple: client sends a selector string + CRLF, server responds with content and closes the connection. No headers, no cookies, no TLS, no JavaScript. Port 70.
Navigation is menu-driven. There are no inline hyperlinks in text — links only appear in gophermap menus (the equivalent of index.html). Each item has a type:
| Code | Meaning |
|---|---|
0 | Plain text file |
1 | Directory / submenu |
7 | Search (interactive query) |
i | Informational text, not a link |
Gopherspace in 2025: ~300 active servers, ~4.9 million indexed items via the Veronica-2 search engine. Start at gopher://gopher.floodgap.com — Floodgap has been the community hub since 1999.
No Gopher client? Use the web proxy: https://gopher.floodgap.com/gopher/gw
Gemini — Gopher With TLS and Better Text
Gemini launched in 2019, explicitly designed to sit between Gopher and the web. It adds mandatory TLS (port 1965), a lightweight markup format called Gemtext, and inline link lines — but deliberately excludes cookies, tracking, and anything that could enable surveillance.
It’s often described as “souped-up Gopher.” The comparison is apt.
Geminispace in early 2026: ~3,300 actively responding capsules (Gemini term for a site), with up to 6,000 known total. Small, but growing. Content skews toward personal writing, technical essays, and community discussion — hand-crafted, explicitly not LLM-generated.
Where to Start in Geminispace
Search:
gemini://kennedy.gemi.dev/— best search engine as of 2025gemini://medusae.space/— Yahoo-style topic directory, good for browsing
Feed aggregators (find new capsules):
gemini://warmedal.se/~antenna/— manually submitted, high signalgemini://gemini.circumlunar.space/capcom/— random 100 feeds/month
Community:
gemini://station.martinrue.com/— microblogging, ~1,600 usersgemini://midnight.pub/— pub-themed social writing communitygemini://bbs.geminispace.org/— forums and discussions
Pubnix (shell access + hosting):
gemini://sdf.org— oldest, most established shared Unix servergemini://rawtext.clubgemini://gemini.ctrl-c.club
The Protocol at a Glance
| Gopher | Gemini | Modern Web | |
|---|---|---|---|
| Year | 1991 | 2019 | 1991+ |
| Port | 70 | 1965 | 80/443 |
| TLS | None | Mandatory | Optional |
| Inline links | No | Dedicated lines | Anywhere |
| Tracking | Impossible | Impossible | Prevalent |
| Active servers | ~300 | ~3,300 | ~1 billion |
Accessing Both From the Terminal
I use Offpunk — an offline-first terminal browser that supports Gemini, Gopher, HTTP, Spartan, and Finger. Gemini is its primary protocol; it handles TOFU certificate validation (trust-on-first-use, same model as SSH) and caches everything for offline reading.
go gopher://gopher.floodgap.com
go gemini://kennedy.gemi.dev/
That’s it. No browser engine, no ads, no 40MB of JavaScript. Just content.