Gemini (protocolo)

De Wikipedia, la enciclopedia libre
Gemini
Puertos 1965/TCP
Ubicación en la pila de protocolos
Aplicación Transporte de archivos
Gemtext
gemini.circumlunar.space
Información general
Extensión de archivo .gmi
Tipo de MIME text/gemini (no oficial)
Type code TEXT
Tipo de formato Markup language
Formato abierto No 

Gemini es un protocolo de comunicación en la capa de aplicación de Internet para acceder a documentos remotos, similar al Protocolo de Transferencia de Hipertexto y a Gopher. Está pensado como una tercera alternativa a esos protocolos. Viene con un formato de documento especial, comúnmente llamado «gemtext», que permite enlazar con otros documentos. Iniciado por alguien conocido como Solderpunk, el protocolo está siendo finalizado de forma colaborativa y actualmente no ha sido presentado al IETF para su estandarización.[1]

Diseño[editar]

La especificación Gemini define tanto el protocolo Gemini como un formato de archivo nativo para ese protocolo (análogo a HTML para HTTP o a texto plano para Gopher), conocido como «gemtext». El diseño se inspira en Gopher, con ciertas adiciones modernas como el uso obligatorio de la seguridad de la capa de transporte (TLS) para las conexiones y un formato de hipertexto como tipo de contenido nativo.

El diseño es deliberadamente poco extensible, para preservar uno de los objetivos declarados del proyecto: la simplicidad.

Software[editar]

Clientes de Gemini[editar]

Debido a la simplicidad del protocolo y del tipo de medio servido, se han implementado varios navegadores Gemini. La siguiente lista no exhaustiva de clientes pone de manifiesto su diversidad. Hay más listas disponibles en línea.

Los clientes de línea de comandos son bastante populares debido a que el marcado simple de Gemini es fácil de mostrar en un formato de sólo texto, mientras que puede ser bastante limitante con el contenido web.[2][3]

Captura de pantalla de Amfora, un cliente para Gemini
Nombre Plataforma Lenguaje de programación
Amfora Terminal (TUI) Go
AmiGemini GUI (Intuition) C, Intuition
Ariane App (Android) Kotlin
asuka Terminal (TUI) Rust, ncurses
AV-98 Terminal (CLI) Python
Bollux Terminal Bash
Bombadillo Terminal Go
Buran App (Android) Kotlin
Castor GUI (GTK) Rust, GTK3
Castor9 GUI (Plan 9) C
Deedum App (Android and iOS) Flutter, Dart
Elaho (gemini-ios) App (iOS) Swift
Elpher GUI (Emacs) Emacs
Fafi GUI Racket
GemiNaut GUI (Windows) C# for Microsoft Windows
Geopard GUI (GTK) Rust, GTK4
gmni Terminal (CLI) C
Kristall GUI (Qt) C++, Qt
Lagrange GUI C, SDL
Moonlander GUI (GTK) Rust, GTK3
Rocketeer App (iOS, MacOS) Swift

Como alternativa a los clientes nativos de Gemini, se pueden utilizar pasarelas Gemini-a-HTTP con los navegadores web más comunes que no soportan el protocolo Gemini. Algunos servidores proxy conocidos son el portal Mozz.us, Vulpes Proxy y ondollo.

Software de servidor Gemini[editar]

Existen varias implementaciones de servidores, cuyas listas se mantienen en línea.

Véase también[editar]

Referencias[editar]

  1. «Visiting another world [LWN.net]». lwn.net. Consultado el 23 de septiembre de 2021. 
  2. «Project Gemini FAQ». gemini.circumlunar.space. Consultado el 23 de septiembre de 2021. 
  3. comments, 06 Oct 2020 Seth KenlonFeed 58up 2. «Simplify your web experience with this internet protocol alternative». Opensource.com (en inglés). Consultado el 23 de septiembre de 2021.