* Front Page * Table of Contents * Return to Town

Gemini Wiki

Gemini is an internet protocol somewhat similar to Gopher. For more information, check out the Project Gemini homepage.

Get Started

To start your own Gemini capsule on the town, run the town request-gemini command.

This will create a new directory in your home called public_gemini.

When your ~/public_gemini directory is linked to the town's Gemini server you'll receive a local email, letting you know that you're good to go!

Writing in Gemtext

Much like your HTML homepage, your Gemini homepage needs an index file: index.gmi.

.gmi files are written in the Gemtext markup language, which is like a simpler version of Markdown.

In Gemtext, long lines are wrapped automatically by the client to fit the screen and short lines do not get joined together (as they might in HTML, Markdown or LaTeX).

You can write a paragraph as a single long line, and a Gemini client will wrap it neatly to fit the screen for you.

Blank lines are rendered verbatim in Gemtext - if you type three blank lines, the client will render three blank lines. When it comes to whitespace in plain text, what you see is what you get.

There are three formatting options - headings, lists, and blockquotes. Please note that the specification states that it is strictly optional for Gemini clients to do anything with these, and while most clients do present them in a way that is expected, some more rudimentary clients may just present them as plaintext.


Gemtext offers three heading levels:

# Heading

## Sub-heading

### Sub-subheading


Gemtext has simple unordered lists, which cannot be nested:

* This is
* an unordered list
* which cannot be nested


Blockquotes are supported by Gemtext:

> Blockquotes in Gemtext are written as a single long line. They are denoted by a > character.

Preformatted text

In addition to the above formatting options, Gemtexts offers support for preformatted text. This is similar to using the <pre></pre> tags in HTML. To start a block of preformatted text, type ```. This will cause clients to render everything as-is, using a monospace font. This is useful for typing code or for ASCII art.


Similar to Gopher, Gemini will only allow you to place links on their own line. Gemini does not support inline links. You can link to files, webpages, gopherholes, and other Gemini capsules easily using the => characters.

Gemini links:

  1. Start with =>
  2. Followed by optional whitespace (as many as you'd like!)
  3. Followed by a URL of any protocol you wish
  4. Optionally followed by at least one space/tab, followed by a human-friendly label of any length.

For example:

=> https://example.com    Check out this site!

=> gopher://example.com   And this gopherhole!

=>gemini://example.com Check it out, no space at the start!

=>       gemini://example.com          I can add LOADS of whitespace!

=> https://example.com I don't even need to label my links, look:

=> sftp://example.com

=> https://www.google.com   Go here to look up things on the World Wide Web!


The above information can is documented in further detail here. You can also refer to this handy cheatsheet.


Gemini can be accessed directly from your tilde.town shell using the town bollux CLI-based browser.

Example: $ town bollux gemini://tilde.town

There are many clients available for browsing Geminispace, many of which also support Gopherspace. Lagrange is a beautiful GUI client available on Windows, macOS, Linux ans with beta builds for iOS and Android.

For a handy list of graphical clients and terminal clients, as well as web proxies and an SSH kisok, visit this page. For a more in-depth (but less organised) list of Gemini software, look here.

References and external links

Project Gemini homepage (HTTPS)

Project Gemini (Gemini) (Web proxy)

last compiled: 2024-01-23 01:58:22.544311