HOME

TheInfoList



OR:

Gemini is an application-layer internet communication protocol for accessing remote documents, similar to the Hypertext Transfer Protocol (HTTP) and
Gopher Pocket gophers, commonly referred to simply as gophers, are burrowing rodents of the family Geomyidae. The roughly 41 speciesSearch results for "Geomyidae" on thASM Mammal Diversity Database are all endemic to North and Central America. They are ...
. It comes with a special document format, commonly referred to as "gemtext", which allows linking to other documents. Started by a pseudonymous person known as Solderpunk, the protocol is being finalized collaboratively and as of October 2022, has not been submitted to the
IETF The Internet Engineering Task Force (IETF) is a standards organization for the Internet and is responsible for the technical standards that make up the Internet protocol suite (TCP/IP). It has no formal membership roster or requirements and a ...
organization for standardization.


Design

The Gemini specification defines both the Gemini protocol and a native file format for that protocol (analogous to HTML for HTTP or plaintext for Gopher), known as "gemtext". The design is inspired by
Gopher Pocket gophers, commonly referred to simply as gophers, are burrowing rodents of the family Geomyidae. The roughly 41 speciesSearch results for "Geomyidae" on thASM Mammal Diversity Database are all endemic to North and Central America. They are ...
, with certain modern additions such as mandatory use of
Transport Layer Security Transport Layer Security (TLS) is a cryptographic protocol designed to provide communications security over a computer network. The protocol is widely used in applications such as email, instant messaging, and voice over IP, but its use in securi ...
(TLS) for connections and a hypertext format as native content type. The design is deliberately not easily extensible, in order to preserve one of the project's stated goals of simplicity.


Protocol

Gemini is designed within the framework of the
Internet protocol suite The Internet protocol suite, commonly known as TCP/IP, is a framework for organizing the set of communication protocols used in the Internet and similar computer networks according to functional criteria. The foundational protocols in the sui ...
. Like HTTP/S, Gemini functions as a request–response protocol in the client–server computing model. A Gemini server should listen on TCP port 1965. A Gemini browser (analogous to a
web browser A web browser is application software for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's screen. Browsers are used o ...
), for example, may be the ''client'' and an application running on a computer hosting a Gemini site may be the ''server''. The client sends a Gemini ''request'' message to the server, and the server sends back a ''response'' message. Gemini uses a separate connection to the same server for every resource request. Gemini mandates the use of TLS with privacy-related features and
trust on first use Trust on first use (TOFU), or trust upon first use (TUFU), is an authentication scheme used by client software which needs to establish a trust relationship with an unknown or not-yet-trusted endpoint. In a TOFU model, the client will try to look ...
(TOFU) verification being strongly suggested. Gemini resources are identified and located on the network by
Uniform Resource Locator A Uniform Resource Locator (URL), colloquially termed as a web address, is a reference to a web resource that specifies its location on a computer network and a mechanism for retrieving it. A URL is a specific type of Uniform Resource Identifi ...
s (URLs), using the
URI scheme A Uniform Resource Identifier (URI) is a unique sequence of characters that identifies a logical or physical resource used by web technologies. URIs may be used to identify anything, including real-world objects, such as people and places, conc ...
''gemini://''. A Gemini request consists only of such a URL, terminated by CRLF; the header of a Gemini response consists of a two-digit status code, a space, and a "meta" field, also terminated by CRLF. If the server is successful in finding the requested file, the "meta" field is the MIME type of the returned file and after the header follows the file data.


Gemtext format

Text in the gemtext format is line-oriented which simplifies parsing and rendering. Notably, the first three characters of a line suffice to determine its type. Gemtext offers markup for headlines (three levels), flat list items, pre-formatted text, quotes, and link lines – no inline emphasis. As with HTTP hypertext, URIs are encoded as hyperlinks in gemtext documents, so as to form interlinked hypertext documents in the Gemini "web", which users refer to as ''Geminispace''.


Geminispace

"Geminispace" denotes the whole of the public resources that are published on the Internet by the Gemini community via the Gemini protocol. Thus, Gemini spans an alternative communication web, with hypertext documents, including hyperlinks to other resources easily accessible to the user. Geminispace consists of around 1200 online known Gemini appearances ("capsules") identified by crawling over 270,000 URIs.


Development

The Gemini project was started in June 2019 by Solderpunk. Additional work has been done by an informal community of users. According to Solderpunk's FAQ, Gemini is not intended to replace Gopher or HTTP, but to co-exist with them. Much of the development happened on the Gemini mailing list until the list disappeared end of 2021 due to a hardware issue. The creation of the
Usenet Usenet () is a worldwide distributed discussion system available on computers. It was developed from the general-purpose Unix-to-Unix Copy (UUCP) dial-up network architecture. Tom Truscott and Jim Ellis conceived the idea in 1979, and it wa ...
newsgroup ''comp.infosystems.gemini'' in October 2021 was the first new newsgroup in the Big Eight hierarchy in eight years.


Software


Gemini clients

Due to the simplicity of the protocol and served media type, various Gemini browsers have been implemented. Command line clients are fairly popular due to Gemini's simple markup being easy to display in a text only format. The following is a non-exhaustive list of clients. Alternatively to native Gemini clients, Gemini-to-HTTP gateways can be used with common web browsers not supporting the Gemini protocol. Known such
proxy server In computer networking, a proxy server is a server application that acts as an intermediary between a client requesting a resource and the server providing that resource. Instead of connecting directly to a server that can fulfill a reques ...
s are the ''Mozz.us portal'', ''Vulpes Proxy'', and ''ondollo''.


Gemini server software

Various server implementations exist; lists thereof are maintained online.


Reception

Gemini is praised for its simplicity but criticized for "excluding people who use ordinary web browsers". Gemini's usefulness has been said to be "dependent on the kinds of content available on Gemini and whether it appeals or not". Stéphane Bortzmeyer has said Gemini is retro but with modern features.


See also

*
Timeline of hypertext technology This article presents a timeline of hypertext technology, including "hypermedia" and related human–computer interaction projects and developments from 1945 on. The term ''hypertext'' is credited to the author and philosopher Ted Nelson. See als ...
*
Text-based web browser A text-based web browser is a web browser that renders only the text of web pages, and ignores most graphic content. Under small bandwidth connections, usually, they render pages faster than graphical web browsers due to lowered bandwidth demand ...


References


External links


HTTP mirror of Gemini's site on Gemini


* by James Tomasino
"Awesome Gemini" — A collection of awesome things regarding the gemini protocol ecosystem.

Kristall, Amfora and Bollux - a look at three gemini browsers
Video by Chris Were on ShareTUBE, a PeerTube Fediverse Server
FOSDEM 2021 Talk on Gemini


in German magazine
c't ''c't'' – ' (''Magazine for Computer Technology'') is a German computer magazine, published by the Heinz Heise publishing house. The 5.71 meter high tower from the 587 published c't editions up to the 30th anniversary has been in the foyer ...

Gopher, Gemini, and the rise of the small Internet: Beyond the Web
Article in
Linux Magazine ''Linux Magazine'' is an international magazine for Linux software enthusiasts and professionals. It is published by the former Linux New Media division of the German media company Medialinx AG. The magazine was first published in German in 199 ...
{{URI scheme Application layer protocols Internet protocols Network protocols Accessible information Hypertext Internet properties established in 2019