2022…, n'a pas été soumis à l' organisation IETF pour normalisation .
Histoire
Le projet Gemini a été lancé en juin 2019 par Solderpunk. Une communauté informelle d'utilisateurs a également contribué à son développement. Selon la FAQ de Solderpunk, Gemini n'a pas vocation à remplacer Gopher ou HTTP , mais à coexister avec eux. La majeure partie du développement s'est déroulée sur la liste de diffusion Gemini, jusqu'à sa disparition fin 2021 suite à un problème matériel. La création du groupe de discussion Usenet comp.infosystems.gemini en octobre 2021 a marqué l'apparition du premier nouveau groupe de discussion au sein de la hiérarchie des huit grands réseaux (Big Eight) depuis huit ans.
Conception
La spécification Gemini définit à la fois le protocole Gemini et un format de fichier natif pour ce protocole, analogue à HTML pour HTTP, appelé « gemtext ». Sa conception s’inspire de Gopher , mais avec des modernisations telles que l’utilisation obligatoire du protocole TLS ( Transport Layer Security ) pour les connexions et un format hypertexte comme type de contenu natif.
La conception n'est pas volontairement extensible, afin de répondre à un objectif de simplicité du projet.
Protocole
Gemini est conçu dans le cadre de la suite de protocoles Internet . À l'instar de HTTP/S, Gemini fonctionne comme un protocole requête-réponse dans le modèle client-serveur. Un serveur Gemini doit écouter sur le port TCP 1965. Un navigateur Gemini, par exemple, peut faire office de client , tandis qu'une application exécutée sur un ordinateur hébergeant un site Gemini peut faire office de serveur . Le client envoie une requête Gemini au serveur, et le serveur renvoie une réponse . Gemini utilise une connexion distincte au même serveur pour chaque requête de ressource.
Gemini impose l'utilisation de TLS avec des fonctionnalités liées à la confidentialité et la vérification de la confiance lors de la première utilisation (TOFU) est fortement recommandée.
Les ressources Gemini sont identifiées et localisées sur le réseau par des URL ( Uniform Resource Locators ), selon le schéma d'URI gemini:// . Une requête Gemini se compose uniquement d'une telle URL, terminée par un point-virgule CRLF. L'en-tête d'une réponse Gemini comprend un code d'état à deux chiffres, un espace et un champ « meta », également terminé par un point-virgule CRLF. Si le serveur trouve le fichier demandé, le champ « meta » contient le type MIME du fichier renvoyé, suivi des données du fichier.
Format Gemtext
Le format Gemtext est orienté ligne et les trois premiers caractères d'une ligne déterminent son type. La syntaxe inclut des balises pour les titres, les listes à puces, le texte préformaté, les citations et les liens hypertextes. Comme pour l'hypertexte HTTP, les URI sont encodées sous forme d'hyperliens pour former des documents hypertextes interconnectés dans le « web » Gemini, que les utilisateurs appellent Geminispace .
Espace Gémeaux
L’« espace Gemini » désigne l’ensemble des ressources publiques publiées sur Internet par la communauté Gemini via le protocole Gemini. Gemini constitue ainsi un réseau de communication alternatif, avec des documents hypertextes, incluant des hyperliens vers d’autres ressources facilement accessibles à l’utilisateur.
,Geminispace se compose d'environ 3900 apparitions Gemini connues en ligne (« capsules ») identifiées en explorant plus de 600 000 URI.
Logiciel


La liste des logiciels Gemini comprend des clients, des serveurs, des bibliothèques et des outils. Le fondateur de Gemini, Solderpunk, a créé un client pour le protocole appelé AV-98. Les passerelles de serveur proxy Gemini vers HTTP, telles que Mozz.us, peuvent être utilisées par les navigateurs Web ne prenant pas en charge Gemini.