Alternative Internets: Finger, Gopher, and Gemini Explained
#Trends

Alternative Internets: Finger, Gopher, and Gemini Explained

AI & ML Reporter
6 min read

A practical look at three lightweight URI schemes—finger://, gopher://, and gemini://—their histories, how they work, and why they matter for a more decentralized, low‑resource web.

Alternative Internets: Finger, Gopher, and Gemini Explained

Featured image

The modern web is dominated by a single rendering engine and a handful of protocols. That concentration makes sense from a business perspective, but it also raises the cost of participation: you need a powerful GPU, a lot of RAM, and a browser that constantly pulls in JavaScript. Three older (and one newer) URI schemes avoid that overhead entirely. They run in a terminal, require only a TCP connection, and give users a way to publish without handing data to large platforms. Below is a concise walk‑through of what each protocol claims, what is actually new, and where the limitations lie.


1. finger:// – The first "profile" service (1971)

What is claimed – A tiny daemon on port 79 that returns a plain‑text description of a user: name, email, login status, and the contents of two optional files, .plan and .project.

What is actually new – Nothing about the wire format is novel; it is a single‑line request followed by a human‑readable response. The value lies in its simplicity and the cultural artifact of the .plan file, which predates modern status updates. Because the protocol is opt‑in, a server only shares information that the owner explicitly writes to those files.

Limitations

  • No authentication or encryption; anyone on the network can query the daemon.
  • Only plain text is transmitted; binary data, images, or rich formatting are impossible.
  • Modern browsers treat finger: links as external applications, so the experience is fragmented.

Practical use – Run a finger daemon on any Linux box with a single apt install finger (or pkg install finger on BSD). Tools like the terminal‑based browser Bombadillo include native support, letting you type finger [email protected] and read the result without leaving the shell.


2. gopher:// – Hierarchical menus for the pre‑Web era (1991)

What is claimed – A menu‑driven protocol that presents a tree of directories and files. Each item is a single line containing a type marker, a user‑visible label, and a selector string. The client renders the menu and lets the user navigate with simple keystrokes.

What is actually new – Gopher introduced a clean separation between navigation (the menu) and content (plain text, PDFs, images). Its design predates HTML but accomplishes a similar goal with far less bandwidth. The protocol itself has not changed since the early 1990s; the novelty today is community‑driven maintenance and the fact that it still runs on port 70.

Limitations

  • No built‑in encryption; all traffic is clear‑text unless wrapped in TLS by a proxy.
  • No support for complex layout, forms, or client‑side scripts.
  • Search is limited to external indexes like Veronica‑2; there is no native query language.

Current state – As of January 2026 there are roughly 410 active Gopher servers serving over 5.8 million unique selectors, according to the Veronica‑2 index. The protocol survives because hobbyists host personal "gopherholes" with static files generated by simple shell scripts (e.g., gopher-build.sh). Clients such as Bombadillo, Offpunk, and the GUI browser Lagrange can retrieve Gopher content directly.


3. gemini:// – Minimalist, encrypted capsules (2019)

What is claimed – A modern protocol that mirrors Gopher's simplicity but mandates TLS for every connection. Requests consist of a single URL terminated by CRLF; responses contain a two‑digit status code, a MIME‑like content type, and the payload. The native document format, Gemtext, is line‑oriented with a handful of prefixes (=> for links, # for headings, * for list items, etc.).

What is actually new – The mandatory encryption addresses the privacy concerns that made Gopher less attractive after the Snowden disclosures. Gemtext eliminates markup complexity: there is no inline styling, no JavaScript, no cookies. The protocol fits on a single printed page, making it easy to implement in any language. The design encourages authors to focus on content rather than layout.

Limitations

  • No native support for images or multimedia; only text and limited pre‑formatted blocks.
  • No client‑side interactivity beyond following links; dynamic applications must be built on top of the protocol (e.g., using server‑side rendering of plain text).
  • Adoption is still niche; most users need a dedicated Gemini client or a web proxy (e.g., portal.mozz.us).

Practical use – Deploy a Gemini server with a few lines of configuration in caddy, gmid, or agate. For publishing, the author of this article uses a Markdown‑to‑Gemtext converter that strips formatting to the required line prefixes. Clients like Bombadillo, Offpunk, and the GUI browser Lagrange provide a comfortable reading experience on any terminal or lightweight desktop.


Why these protocols matter now

  1. Hardware footprint – A modern Chromium browser can easily exceed 2 GB of RAM, while a Gemini client such as Bombadillo runs in a few megabytes. Older laptops (circa 2005) that can no longer handle Chrome are still perfectly capable of fetching Gopher menus or Gemini capsules.
  2. Energy consumption – Less processing means lower power draw, an advantage for devices running on solar or battery power.
  3. Decentralization – No corporate gatekeeper controls the protocol specifications. Anyone can run a server on a home connection, a VPS, or even a Raspberry Pi.
  4. Privacy by design – Mandatory TLS in Gemini, the opt‑in nature of Finger, and the lack of third‑party scripts in Gopher reduce the attack surface for tracking and data harvesting.

Getting started

  • Client list – The community‑maintained awesome‑gemini list on GitHub enumerates clients, servers, and libraries for many languages. awesome‑gemini on GitHub
  • Terminal browsers – Install Bombadillo (pkg install bombadillo) for a Vim‑style interface that handles Finger, Gopher, and Gemini in one program. Offpunk (cargo install offpunk) offers offline‑first reading and syncing.
  • GUI optionLagrange (brew install lagrange) provides a clean windowed experience for Gemini and Gopher.
  • Web proxies – If you only have a standard browser, use https://portal.mozz.us or https://proxy.vulpes.one to translate Gemini URLs into HTTP.
  • Publishing – Convert existing Markdown to Gemtext with the author’s open‑source converter (link in the original post). For Gopher, a simple shell script that writes a gophermap file is enough to expose a directory.

Closing thoughts

Finger, Gopher, and Gemini are not marketing hype; they are concrete, low‑resource alternatives to the HTTP‑centric web. Their constraints force authors to write concisely, and their minimalism keeps the barrier to entry low. By experimenting with these protocols you can experience a version of the Internet that runs on a terminal, respects privacy by default, and avoids the lock‑in of modern browsers. The next step is simple: pick a client, point it at gemini://gemini.circumlunar.space or gopher://gopher.floodgap.com, and see how much of the world is still reachable without a single line of JavaScript.

Comments

Loading comments...