awesome-gemini

Gemini projects

A curated collection of resources and projects related to the Gemini protocol ecosystem.

A collection of awesome things regarding the gemini protocol ecosystem.

GitHub

1k stars
31 watching
106 forks
last commit: 2 months ago
Linked from 2 awesome lists

awesomeawesome-listawesome-listsgeminigemini-protocol

Awesome Gemini

https://codeberg.org/kr1sp1n/awesome-gemini
https://git.sr.ht/~kr1sp1n/awesome-gemini
https://gitlab.com/kr1sp1n/awesome-gemini
https://github.com/kr1sp1n/awesome-gemini 1,054 2 months ago

Awesome Gemini / Gemini Specification

Official protocol specification
Official gemtext specification
protocol spec discussion and development
gemini-text spec discussion and development

Awesome Gemini / Clients / Terminal

Amfora 1,169 3 months ago (Go) - "fancy" terminal client. In
astronaut (Go) - a gemini browser for the terminal
Asuka (Rust) - an NCurses-based Gemini client
AV-98 (Python) - Gemini client derived from the popular VF-1 Gopher client
AV-98-fork A fork of AV-98
bollux (Bash) - bash Gemini client
bombadillo (Go) - combined Gopher, Gemini, Finger, and File client with vim-inspired key mappings
cgmnlm (C) - colorful gemini line-mode client, fork of gmni
diohsc (Haskell) - simple line-based command-response terminal user interface with ANSI colour
Elpher (Emacs) - combined Gopher and Gemini client for the popular text editor / operating system
ereandel 56 about 1 month ago (Shell) - terminal client using a custom pager written in POSIX shell script
gelim (Go) - A minimalist line-mode smolnet client written in go
gem.awk (Awk) - minimal but usable interactive Gemini client in < 250 LOC of Awk
gembro (Go) - gemini client using
Gemcurses 8 9 months ago (C) - A Gemini client, written in C using ncurses
gemini-demo-1 (Python) - minimal but usable interactive Gemini client in < 100 LOC of Python 3
gemini-demo-2 (Lua) - minimal but usable interactive Gemini client in < 100 LOC of Lua
gemini-demo-3 (Go) - minimal but usable interactive Gemini client in not quite < 100 LOC of Go
gemini-fetch 21 almost 2 years ago (Node.js) - cURL-like CLI for loading content from Gemini URLs
gemivim (Vim) - simple VIM plugin for browsing Gemini pages
gmi (Shell) - Tiny Gemini browser written in POSIX-compliant shell. Highly hackable, portable shell script under 200 lines
gmi100 66 23 days ago (C) - CLI Gemini client written in 100 lines of ANSI C
gmni (C) - CLI utility (like curl) and line-mode browser
gplaces 30 about 1 month ago (C) - command-driven, terminal based Gemini client in ~1K LOC of C
Gremlin 15 almost 3 years ago (Rust) - TUI for browsing Gemini space
leo 5 11 months ago (Python) - lightweight, prompt-driven Gemini client
min 32 over 3 years ago (Go) - supports advanced features like input and client certificate generation
ncgopher 170 9 days ago (Rust) - gopher and gemini client for the modern internet
Offpunk (Python) - Gemini, gopher, spartan and http/html offline-first browser
Omura (Node.js, Bun) - Pushing lightweight gemtext-based internet CLI client
Romulus 12 over 2 years ago (C#) - interactive TUI client with menus and mouse support
Scroll-Term (Go) - Gemini, Nex, and Scroll terminal client with audio streaming support
Telescope (C) - w3m-inspired, multi-protocol client that supports Gemini, Gopher and Finger
tinmop (Common Lisp) - opinionated Mastodon and Gemini client
tgmi (python) - full-featured CLI terminal-based Gemini client
vimini (Rust) - Desktop gemini browser inspired by qutebrowser and Vim

Awesome Gemini / Clients / Graphical

Agregore 749 10 days ago (Electron.js) - peer to peer web browser with support for loading Gemini pages
Alrisha (QML) - QML-based Gemini client
Castor (Rust) - graphical Gemini client using GTK
Eva (Rust) - a Gemini protocol browser in Gtk4
Fafi (Racket) - graphical Gemini browser written in Racket
Fossil 29 about 3 years ago (Vala) - GTK3 Gemini browser written in Vala for desktop and mobile
Galacteek (Python) - Browser for the distributed web, with support for Gemini and IPFS
Gemalaya (Python/QML) - Keyboard-driven Gemini browser with builtin web-to-gemini proxy
Gerbil (Python) - Gemini and Spartan browser written in python with GTK and LibHandy for desktop and mobile
Lagrange (C) - desktop GUI client with inline image viewing, multiple tabs, bookmarks and more
Molasses 30 5 days ago (Racket) - full-featured graphical Gopher and Gemini client with tabs
Moonlander (Rust) - the fanciest Gemini client in the entire solar system
Profectus (Go) - Gemini, Nex, Spartan, and Scroll client with tabs, music player, streaming, and expansive theming
Kristall 743 11 months ago (C++) - graphical Gopher and Gemini client using QT
spacewar 3 about 4 years ago (Electron.js) - EXPERIMENTAL and UNSTABLE Gemini browser running on Electron
Geopard 157 about 2 months ago (Rust) - A colorful, adaptive gemini browser
Yoda 3 4 days ago (PHP-GTK) - Experimental browser for Gemini Protocol based on and
Buran 107 over 1 year ago (Kotlin/Java) - Gemini browser for Android, fork of Ariane
Deedum 128 8 months ago (Dart) - an Android and iOS client made with Flutter
Elaho 119 12 months ago (Swift) - full featured Gemini protocol browser for iOS
Gem (Python) - Gemini client for Ubuntu Touch
Xenia (Java) - Gemini proxy for Android
Phaedra (Java) - Gemini client for Android supporting even very old ones; author recommends using Ariana if a current Android is at hand
Rosy Crow (C#) - An Android client built using .NET MAUI
GemiNaut (C#) - user friendly graphical Gemini client for MS Windows
Jimmy 57 about 1 year ago (SwiftUI) - a lightweight native Gemini client for MacOS
AmiGemini

Awesome Gemini / Programming

Agunua (Python) - Gemini library to write clients. Includes IRI support, gemtext parsing and CLI tool
derhuerst/gemini 49 11 months ago (Node.js) - server & client lib
a-h/gemini 45 over 1 year ago (Go) - Applications and libraries for building applications on Gemini
cuipod 5 almost 3 years ago (C#) - Simple yet flexible framework for Gemini protocol server
gemclient 15 about 3 years ago (Nim) - rich client library for the Gemini Protocol
gemini 7 about 1 month ago (Go) - Server side Gemini protocol + Titan protocol implementation that matches standard GO http API
gig 61 over 2 years ago (Go) - Gemini framework
gmir 7 12 days ago (Go) - A reader for gmi files
go-gemini (Go) - library that provides an easy interface to create client and servers
go-gemini 60 5 months ago (Go) - more recent fork of the library above
gusmobile (Python) - gemini client for Pyhton (used by geminispace.info)
html2gemini 23 over 2 years ago (Go) - package library to convert HTML to Gemini (see also html2gmi for command line application)
ignition 35 7 months ago (Python) - Gemini client transport/request library for python3
qgeminiserver (Deno/TypeScript) - framework for server applications. fork and bug-fix
kaksik 12 6 months ago (Deno/TypeScript) - middleware library for building server applications
ruby-net-text (Ruby) - Gemini support in Net::* and URI::* stack
SmolNetSharp 12 over 2 years ago (C#) - cross platform .NET (core/framework) client library for building Gemini and Gopher clients
warmuuh/jemini 5 over 3 years ago (Java) - reactive gemini-client, part of jemini-project
geminic 7 over 3 years ago (Erlang) - An Erlang library for building Gemini protocol clients
dremini 7 about 2 months ago (C++) - Highly concurrent C++ Gemini server and client library
Opal 7 11 months ago (C#) - Gemini client library targeting .NET Standard 2.0. Built-in support for TOFU and client certificates
gemax 5 over 1 year ago (Go) - a golang gemini stack, inspired by go STD http library
phos 5 6 months ago (Common Lisp) - Gemini client library and experimental GUI
GemPub Specification Gempub, the Gemini e-book (and capsule archive) container specification
Gemini TinyLog Specification A Tinylog is a simple file with all "microblog" style entries to share small contents and interact with other geminauts' tinylog
Adding Emoji Favicons to Gemini Optional extension by Michael Lazar to the Gemini Protocol, with the goal to set a Unicode emoji as favicon for a site

Awesome Gemini / Resources

Gemini Specification the Gemini protocol documentation
geminiprotocol.net/software/ list of Gemini software

Awesome Gemini / Servers

Agate 607 13 days ago (Rust) - simple Gemini server for static files
aiogemini 5 almost 3 years ago (Python) - minimalist Python 3 server
Apogee 5 11 months ago (Kotlin) - Gemini server written in Kotlin for the JVM
atlas 14 8 months ago (C#) - .NET7 Gemini/Titan/Spartan server w/ vhost and cgi support
a-h/gemini 45 over 1 year ago (Go) - Server for Linux, Mac, Raspberry Pi. Supports SNI for multiple domains on the same server, has Docker image
blizanci 29 11 months ago (Erlang) - server designed primarily for robustness and security
Bunkum 11 10 days ago (C#) - Open source .NET Gemini/Titan/Gopher/HTTP(S) request server
Denoscuri 11 over 4 years ago (Typescript) - simple Gemini server written using Deno and Typescript
Dʒɛmɪni (Racket) - server with features like SNI and CGI
Diamant (Ruby) - simple Gemini server for static files
doc-server 2 25 days ago (Deno/Typescript) - A Gemini server for serving JSDoc documentation. Built on the Kaksik library
Doppio 2 over 3 years ago (Java) - single-JAR Gemini server with CGI, authentication, and Atom feed support
Duckling proxy 🦆 (Go) - scheme-specific filtering proxy for Gemini clients to access the web
Earl Server 2 almost 4 years ago (Kotlin) - Gemini fileserver for the JVM
Enceladus (F#) - A simple Gemini protocol server implementation in .NET Core and F#
Ergol (PHP) - light Gemini server able to host several capsules with different cerificates
GeGoBi (Python) - server to facilitate easy Gemini-Gopher bi-hosting
Gemeaux 19 6 months ago (Python) - server using only the Python standard library
gemini-ipfs-gateway (Go) - an IPFS Gateway that makes IPFS content available over the Gemini protocol
gemini-server (Haskell) - lightweight server for the Gemini protocol
geminid 40 6 months ago (C) - Gemini Server in C
geminid (Scheme) - Gemini Server in CHICKEN Scheme
gemini-php (PHP) - simple Gemini server in PHP
Gneto 8 over 3 years ago (Go) - Gemini over HTTP proxy, with support for client certificates and CSS customization
JAGS-php 5 almost 3 years ago (PHP) - fork of gemini-php with support of dynamic pages
jsonresume-gemini 3 over 2 years ago (PHP) - single purpose server implementation of the Gemini protocol to serve up your JSON Resume
geminim 35 over 2 years ago (Nim) - an async lightweight Gemini server made in Nim
gmid 103 3 months ago (C) - simple and secure Gemini server
gmifs 13 over 3 years ago (Go) - Gemini file server with auto indexing support, caching and auto TLS key pair creation
gmnd (Python) - packaged Gemini server with support for CGI and indexing
gmnisrv (C) - high-performance Gemini server for POSIX systems
Gemserv (Rust) - server with features like vhosts, CGI, SCGI, reverse-proxying and more
Germinal 40 over 3 years ago (Common Lisp) - serves any type of document with an appropriate mime type
GLV-1.12556 45 2 months ago (Lua) - the first Gemini protocol server with a lot of features
Hydepark 9 over 3 years ago (Rust) - discussion forum application for Gemini
Jetforce 203 about 1 year ago (Python) - built-in static file server with support for gemini directories and CGI scripts
jemini 5 over 3 years ago (Java) - dual gemini/http server on top of jetty with spring-boot integration
laika (Rust) - async Gemini protocol server
levior (Python) - HTTP to Gemini gateway, allowing you to browse regular websites with any Gemini client
Loxy 4 about 1 year ago (C#) - Gemini to HTTP proxy, exposes any capsule to the web as stylable HTML (based on the Opal library)
Lupa Pona 7 over 3 years ago (Perl) - simple single directory Gemini server
Maple 2 about 2 months ago (C++) - A very simple static Gemini server, now with Titan support!
Marami 10 about 4 years ago (Prolog) - server written in Prolog
Molly Brown (Go) - full-featured Gemini server implemented in Go
MoonGem (C) - gemini server with inline Lua scripting for dynamic content generation
net-gemini 30 about 3 years ago (Go) - gemini server inspired by Molly Brown
Orbit (PHP) - Gemini server implemented in PHP
Phoebe (Perl) - Gemini/web wiki
pollux (Rust) - simple server that will only serve one file
rc-gemd (Shell) - simple Gemini server written in rc (for plan9 operating systems)
Satellite (Go) - small Gemini server for serving static files
Shavit (Go) - configurable Gemini server for UNIX operating systems
Smolver (Swift) - a small Gemini server
Space-Age (Clojure) - Gemini server written in Clojure
Taurus (Rust) - A Concurrent Gemini Server
Titan 4 about 4 years ago (Rust) - simple TOML-configured Gemini server and an Express-like Gemini server framework
twins (Go) - YAML-configured Gemini server supporting vhosts, FastCGI and reverse-proxying
twinstar 16 5 months ago (Rust) - gemini server implementation
vger (C) - Gemini server written in C used with inetd
Windmark 13 about 2 months ago (Rust) - An elegant and highly performant async Gemini server framework
SpaceBeans (Scala) - supports virtual hosting, user directories, classic CGI
StaticGeminiServer 0 about 2 years ago ( ) (Ruby) - a simple more or less stable gemini server for static files
kepler 2 over 2 years ago simple gemini server in rust
Mehari 37 6 months ago Featureful server in OCaml
β-Doku 0 9 months ago (PHP) - DokuWiki Satellite for Gemini Protocol
KevaChat 2 9 months ago (PHP) - client/server Chat in Blockchain
gemini-server-clj 0 9 months ago (Clojure) - simple gemini server for serving static files
vostok ( ) (C++11) - gemini server
gem 1 8 days ago (C) - static file server with many features

Awesome Gemini / Services

https version ( ) - host small Gemini web pages over https and Gemini ( )
repo public search provider for Gemini ( )
repo Tic Tac Toe game ( )
repo translate from en->es and es->en ( )
gemlog.blue Gemini hosting from a web frontend
http version ( ) Another public search provider for Gemini( )
repo 0 9 months ago Yggdrasil DokuWiki Satellite ( )
repo 2 9 months ago KevaChat clearnet node for Gemini ( )
repo 0 9 months ago Observe Kevacoin Universe ( )

Awesome Gemini / Tools

astroget 8 7 days ago (C) - Command line tool to download and upload files from Gemini, Gopher, Scorpion, and Spartan servers
CAPCOM (Python) - Atom feed aggregator for gemini
certified (Python) - Generate TOFU TLS certificates for gemini servers
cl-yag (Common-Lisp) - Static site generator producing gemini, gopher and html
comitium (C) - A feed aggregator for gemini supporting many formats and protocols
gemfreely (Rust) - Synchronize gemlogs to the Fediverse via WriteFreely
gemget 70 5 months ago (Go) - Command line downloader for the Gemini protocol
gemini-antenna (Python) - A feed-aggregator for Gemini, triggered by submissions
geminize Firefox addon that redirects gemini:// URLs and links to a customizable HTTP-to-Gemini proxy
gemlog.sh (Bash) - Utility for writing and managing gemini logs (gemlogs) and atom feeds (simple gemini static site generator/framework)
gem.git (Python) - git frontend CGI script
gemmit 8 over 3 years ago (Go) - social news aggregation and web content rating website for the gemini protocol
gempost 9 7 months ago (Rust) - Simple static site generator for Gemini blogs
GemPress (C) - Yet another Gemini publishing framework with HTML and Atom support, written in Bash and Sugar-C
gemtexter (Bash) - Site generator and blog engine for Gemini. Generates Atom and Gemfeeds , and also does Gemtext to HTML and Markdown conversion
gloggery 32 almost 4 years ago (Go) - basic static site generator for blogs in Gemini
gmitohtml (Go) - proxy that renders Gemini pages using HTML
gmnigit (Go) - static git gemini viewer
gssg (Go) - simple gemini static site generator. Generates pages, index and atom feeds
kiln (Go) - simple static site generator for Gemini sites
Lupa crawler to explore the geminispace and make statistics (you can see them at __gemini://gemini.bortzmeyer.org/software/lupa/stats.gmi )
Manisha Nagios (and compatible, such as Icinga) plugin to monitor Gemini servers
spacewalk (Go) - Page-hash based feed aggregator for gemini
MastoGem (Go) - Mastodon proxy for Gemini
Hugo-2-Gopher-and-Gemini 25 5 months ago (Python) - A Hugo theme to convert a Hugo site to Gemini or Gopher
Gopher-and-Gemini-Walker 3 almost 2 years ago (Python) - Terminal client (without network connectivity) to navigate a folder structure containing a Gemini capsule or Gopher hole
Gemini Diagnostics 26 over 2 years ago A torture test for gemini servers
Pulsar 0 7 months ago (PHP) - RSS Aggregator for Gemini Protocol

Awesome Gemini / Tools / Gemtext converters

dioscuri 41 almost 2 years ago (JS) - A Gemtext parser with interfaces to transform to and from mdast (markdown ast) and to compile to HTML
gemgen (Go) - A Markdown to Gemtext generator
gemini-pandoc-lua-filter 20 over 4 years ago (Lua) - lua filter for pandoc to output Gemini text
gemini-to-html 23 8 months ago (Node.js) - JavaScript library for parsing Gemini pages, and for rendering them to HTML
gemtext2latex 2 about 1 year ago (Python) - tool for converting Gemtext to reasonable LaTeX and thence PDF
gemtext2md 2 about 1 year ago (Rust) - tool for converting Gemtext to Markdown
gemtexter (Bash) - Site generator and blog engine for Gemini. Generates Atom and Gemfeeds , and also does Gemtext to HTML and Markdown conversion
gmi2html 29 about 1 year ago (Zig) - tiny gemtext to HTML converter with a focus on performance
gmi2html (Sed) - sed script to convert text/gemini to html
gmi-web (JS) - generate HTML styled for readability and mobile-friendliness
gmnhg (Go) - renders a Hugo site to a Gemini site
Html2GeminiPy 4 almost 4 years ago (Python) - Converts Html sites to Gemini sites using markdownify and md2gemini
html2gmi 36 over 2 years ago (Go) - command line utility to convert HTML to gemtext
md2gmn (Go) - renders Markdown text to Gemini pages
md2gemini 163 over 1 year ago (Python) - converter from Markdown to the Gemini text format
Hugo-2-Gopher-and-Gemini 25 5 months ago (Python) - A Hugo theme to convert a Hugo site to Gemini or Gopher
gemini-php 0 4 months ago (PHP) - Composer library for Gemini - includes DokuWiki converter, file-system operations and other API
gemitwee (PHP) - Converts Twine's Twee2 markup to a set of Gemini files for simple choose-your-own-adventure games

Awesome Gemini / Tools / Syntax Highlighting

gemini-vim-syntax text/gemini syntax highlighting for vim
gemini.el text/gemini syntax highlighting for emacs
gemini.kak 30 over 3 years ago text/gemini syntax highlighting for kakoune
gemini.nanorc 7 over 4 years ago text/gemini syntax highlighting for nano
gemini.sublime-syntax 9 about 1 year ago text/gemini syntax highlighting for bat (and maybe Sublime Text)
gemini.yml 25,198 7 days ago text/gemini syntax highlighting for micro
language_gmi 390 10 days ago gemtext syntax highlighting for lite-xl
gemini-intellij-plugin 3 almost 2 years ago text/gemini syntax highlighting for IntelliJ IDEs

Awesome Gemini / Web proxies

Mozz.us portal
Soweli Lukin
Vulpes proxy
koyu.space GemProxy
Wobbly
Tildeverse Gemini Proxy
yah2g: yet another http-to-gemini

Awesome Gemini / Bots

Fortune Teller Bot 2 over 3 years ago Generates a fortune gmi file, gemlog/index.gmi, and atom.xml every time the bot is executed

Backlinks from these awesome lists:

More related projects: