User Tools

Site Tools

tools:gemini

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tools:gemini [2026/03/31 17:38] – [More Reading] Humphrey Boa-Garttools:gemini [2026/03/31 19:18] (current) – [Gemini] Humphrey Boa-Gart
Line 1: Line 1:
 ====== Gemini ====== ====== Gemini ======
  
-{{wst>expand}}+**Gemini** is an internet protocol used for serving something similar to web pages. It was developed by people nostalgic for a [[tools:gopher|Gopher]]-style internet. Like Gopher, it has a concise markup language providing just barely enough functionality to tell the server where on the page to put links & plain text. All styling is decided by the visitor's Gemini browser, just like with IRC. As a result, Gemini sites are extremely fast to load, as they consume a fraction of the bandwidth it takes to transmit an HTML page.
  
 +Unlike Gopher, it is TLS-native, meaning Gemini connections are encrypted & private. Gemini servers can also recognize unique visitor certificates & serve personalized custom responses, which is the Gemini equivalent of having user accounts. Gemini markup language is also cleaner & easier to read than Gopher's. It is slightly more advanced too, allowing the webmaster to use Markdown-style headings & code blocks to visually distinguish them from the rest of the page. These seemingly-minor extra features make Gemini a viable low-bandwidth & security-conscious alternative to normal websites.
  
-===== Browsing Gemini =====+The Gemini ecosystem //(also known as **Geminispace**)// is relatively resistant to many common methods of browser fingerprinting, as well as ad beacons & advertising in general //(though a server can still geolocate your IP if you are not on a VPN)//. This has made the Geminispace a popular niche destination for those looking for a simpler, more intentional, and less distracting internet. 
 + 
 + 
 +===== Browsing Geminispace =====
  
 There are several ways to browse Gemini sites on your computer: There are several ways to browse Gemini sites on your computer:
Line 12: Line 16:
  
 The slickest and easiest solution is to install [[https://gmi.skyjake.fi/lagrange/|Lagrange]]. It's fast, the interface is clean, and it's available for [[https://apps.apple.com/us/app/lagrange-smallnet-browser/id1554714615|iOS]], [[https://flathub.org/en/apps/fi.skyjake.Lagrange|Flatpak]], and a multitude of [[https://git.skyjake.fi/gemini/lagrange/releases|other platforms]]. Even better, it also supports the [[tools:gopher|Gopher]] & [[tools:finger|Finger]] protocols. This is useful because a lot of Gemini server operators also run Gopher & Finger servers. Having all three in one visually-pleasing browser is a great way to take in the ecosystem. The slickest and easiest solution is to install [[https://gmi.skyjake.fi/lagrange/|Lagrange]]. It's fast, the interface is clean, and it's available for [[https://apps.apple.com/us/app/lagrange-smallnet-browser/id1554714615|iOS]], [[https://flathub.org/en/apps/fi.skyjake.Lagrange|Flatpak]], and a multitude of [[https://git.skyjake.fi/gemini/lagrange/releases|other platforms]]. Even better, it also supports the [[tools:gopher|Gopher]] & [[tools:finger|Finger]] protocols. This is useful because a lot of Gemini server operators also run Gopher & Finger servers. Having all three in one visually-pleasing browser is a great way to take in the ecosystem.
 +
 +[[https://kristall.random-projects.net/|Kristall]] is another popular Gemini browser with Gopher & Finger support.
 +
  
  
 ==== Command Line ==== ==== Command Line ====
  
-{{wst>expand}}+If you are using [[tools:bash|terminal]] you have quite a few options here: I'm not going to install all of these to compare them, so I dunno try them out for youself:
  
 +  * [[https://sr.ht/~chambln/gmi/|gmi]]
 +  * [[https://sr.ht/~sircmpwn/gmni/|gmni]]
 +  * [[https://git.sr.ht/~rafael/gembro|Gembro]]
 +  * [[github>crusom/Gemcurses|Gemcurses]]
 +  * [[http://git.vgx.fr/gem.awk/file/gem.awk.html|gem.awk]]
 +  * [[https://sr.ht/~hedy/gelim/|Gelim]]
 +  * [[github>rkd77/elinks|elinks]]
 +  * [[github>powerboat9/bombadillo|Bombadillo]]
 +  * [[github>makew0rld/amfora|Amfora]]
 +  * [[https://tildegit.org/acdw/bollux|bollux]]
 +  * [[https://www.autistici.org/interzona/tinmop.html|Tinmop]]
 +  * [[github>LukeEmmet/Romulus|Romulus]]
 +  * [[github>a-h/min|min]]
 +  * [[github>actuday6418/gremlin|Gremlin]]
 +  * [[https://thelambdalab.xyz/elpher/|Elpher]]
 +  * [[https://mbays.sdf.org/diohsc/|Diohsc]]
 +  * [[https://codeberg.org/michaelserra/masha|masha]]
 +  * [[https://sr.ht/~adnano/astronaut/|astronaut]]
 +  * [[https://git.sr.ht/~julienxx/asuka|asuka]]
  
 ==== Browser Extensions ==== ==== Browser Extensions ====
  
-You can install [[https://addons.mozilla.org/firefox/addon/geminize/|browser extensions]] to haphazardly duct-tape Gemini support into your browser. If you don't want to install anything, you can use Circumlunar's [[https://portal.mozz.us/gemini/gemini.circumlunar.space/|Gemini Proxy]]. But I wouldn't recommend either of these options outside emergency use. The whole point of using Gemini is so that you can read plaintext articles without the mammoth memory footprint of modern web browsers. Dedicated Gemini apps are so much faster & smoother. Just install [[https://gmi.skyjake.fi/lagrange/|Lagrange]] and you'll see why people appreciate it.+You can install [[https://addons.mozilla.org/firefox/addon/geminize/|browser extensions]] to haphazardly duct-tape Gemini support into your browser. If you don't want to install anything, you can use Circumlunar's [[https://portal.mozz.us/gemini/gemini.circumlunar.space/|Gemini Proxy]]. But I wouldn't recommend either of these options outside emergency use. The whole point of using Gemini is so that you can read plaintext articles without the mammoth memory footprint of modern web browsers. Dedicated Gemini apps are so much faster & smoother. Just install [[https://gmi.skyjake.fi/lagrange/|Lagrange]] and you'll see why people appreciate Gemini.
 ===== Hosting Gemini Sites ===== ===== Hosting Gemini Sites =====
  
-{{wst>expand}}+Popular Gemini server daemons include [[github>LukeEmmet/molly-brown|Molly Brown]], [[https://gmid.omarpolo.com|gmid]], [[github>hachiya-kurisu/natto|natto]], [[github>michael-lazar/jetforce|Jetforce]] and [[github>mbrubeck/agate|Agate]]. I personally prefer Molly Brown since it's lean, easy to set up, and supports CGI scripting. The [[github>humphreyboagart/grackle|Grackle]] server management package actually has a Molly Brown installer built into it, for running a Gemini server alongside normal web sites. Meanwhile [[github>noveltylanterns/raven|Raven]] has built-in support for managing Gemini docroots served by Molly Brown & similar daemons.
  
  
 ==== Dynamic Gemini Sites ==== ==== Dynamic Gemini Sites ====
  
-{{wst>expand}}+It is true that you can only transmit a limited amount of datatypes between server & visitor over the Gemini protocol. However, you can do //virtually unlimited// server-side processing as long as the output follows the protocol's transmission format. 
 + 
 +Most Gemini servers have support for running **CGI scripts**, like the internet of old used to have to do with PHP scripts. Modern PHP installs use heavily abstracted versions of this now, which are tailored specifically for HTTP, so they don't work with Gemini servers too well. However, modern PHP installs also come with ''php-cli'', a command-line version of PHP which spits out plaintext data in a form //especially// suited for Gemini. You just make a CGI wrapper for your PHP script, and pass Gemini requests to ''php-cli'' like this: 
 + 
 +<file cgi loader.cgi> 
 +#!/bin/sh 
 +exec /usr/bin/php /path/to/script.php 
 +</file>
  
 +You are not even limited to PHP, as CGI is basically just shell scripting and capable of executing everything your terminal can. As long as the returned data can be parsed by a Gemini server, you can actually have complex database-driven websites //(within reason)// in the Geminispace. Some Gemini server daemons even support the use of FastCGI for saving CPU cycles & speeding up response times.
  
 ===== More Reading ===== ===== More Reading =====
Line 52: Line 86:
  
  
-{{tag>Tools Protocols Stubs}}+{{tag>Tools Protocols}}
tools/gemini.1774978685.txt.gz · Last modified: (external edit)

Find this page online at: https://bestpoint.institute/tools/gemini
CC Attribution-Noncommercial-Share Alike 4.0 International The Anonymous Fruit Company The East Internet Trading Company Erischan Novelty Lanterns

Copyright 2026 Best Point Holdings Limited