1
0
Fork 0
mirror of https://github.com/kr1sp1n/awesome-gemini.git synced 2024-11-20 11:26:40 -05:00
gemini/README.md

304 lines
27 KiB
Markdown
Raw Normal View History

2020-08-21 04:07:37 -04:00
# Awesome Gemini [![Awesome](https://awesome.re/badge-flat.svg)](https://awesome.re)
2020-08-21 03:54:14 -04:00
A collection of awesome things regarding the [gemini protocol][1] ecosystem.
Please contribute to this list to link to all the awesome gemini projects out there.
2021-02-01 03:21:13 -05:00
Repo mirrors:
2023-08-10 17:02:16 -04:00
* https://codeberg.org/kr1sp1n/awesome-gemini
2021-02-01 03:21:13 -05:00
* https://git.sr.ht/~kr1sp1n/awesome-gemini
2023-08-10 17:02:16 -04:00
* https://github.com/kr1sp1n/awesome-gemini
2021-02-01 03:21:13 -05:00
## What is Gemini
[Excerpt from gemini.circumlunar.space](https://gemini.circumlunar.space/docs/specification.html):
> Gemini is a client-server protocol featuring request-response transactions, broadly similar to gopher or HTTP.
2020-11-20 02:40:25 -05:00
Connections are closed at the end of a single transaction and cannot be reused. When Gemini is served over TCP/IP, servers
should listen on port 1965 (the first manned Gemini mission, Gemini 3, flew in March'65).
This is an unprivileged port, so it's very easy to run a server as a "nobody" user, even if e.g. the server is written
in Go and so can't drop privileges in the traditional fashion.
## Gemini Specification
2021-12-15 12:19:12 -05:00
- [Official specification](https://gemini.circumlunar.space/docs/specification.gmi)
- [protocol spec discussion and development](https://gitlab.com/gemini-specification/protocol)
- [gemini-text spec discussion and development](https://gitlab.com/gemini-specification/gemini-text)
2020-08-21 03:54:14 -04:00
## Contents
- [Clients](#clients)
- [Terminal](#terminal)
- [Graphical](#graphical)
- [Cross-platform](#cross-platform)
- [Mobile](#mobile)
- [Windows](#windows)
2022-06-19 02:00:55 -04:00
- [MacOS](#macos)
2020-08-21 03:54:14 -04:00
- [Programming](#programming)
- [Related Specifications](#related-specifications)
- [Resources](#resources)
2020-08-21 03:54:14 -04:00
- [Servers](#servers)
- [Services](#services)
2020-08-21 03:54:14 -04:00
- [Tools](#tools)
- [Gemtext converters](#gemtext-converters)
2020-08-21 03:54:14 -04:00
- [Web proxies](#web-proxies)
2021-03-27 21:34:51 -04:00
- [Bots](#bots)
2020-08-21 03:54:14 -04:00
## Clients
### Terminal
- [Amfora](https://github.com/makeworld-the-better-one/amfora) (Go) - "fancy" terminal client. In [maintenance mode](https://www.makeworld.space/2023/08/bye_gemini.html).
2021-07-14 11:18:28 -04:00
- [astro](https://github.com/blmayer/astro) (Shell) - terminal client using less written in POSIX shell script.
- [astronaut](https://sr.ht/~adnano/astronaut/) (Go) - a gemini browser for the terminal
2020-11-06 16:26:25 -05:00
- [Asuka](https://git.sr.ht/~julienxx/asuka) (Rust) - an NCurses-based Gemini client.
2021-03-23 05:12:22 -04:00
- [AV-98](https://tildegit.org/solderpunk/AV-98) (Python) - Gemini client derived from the popular VF-1 Gopher client.
2022-06-08 09:19:39 -04:00
- [AV-98-fork](https://notabug.org/tinyrabbit/AV-98-fork.git) - A fork of AV-98.
- [bollux](https://tildegit.org/acdw/bollux) (Bash) - bash Gemini client.
- [bombadillo](https://bombadillo.colorfield.space/) (Go) - combined Gopher, Gemini, Finger, and File client with vim-inspired key mappings.
- [cgmnlm](https://git.sr.ht/~rwa/cgmnlm) (C) - colorful gemini line-mode client, fork of gmni.
2021-03-23 05:12:22 -04:00
- [diohsc](https://mbays.sdf.org/diohsc/) (Haskell) - simple line-based command-response terminal user interface with ANSI colour.
- [Elpher](https://thelambdalab.xyz/elpher/) (Emacs) - combined Gopher and Gemini client for the popular text editor / operating system.
- [gelim](https://sr.ht/~hedy/gelim/) (Go) - A minimalist line-mode smolnet client written in go.
- [gem.awk](http://git.vgx.fr/gem.awk/file/gem.awk.html) (Awk) - minimal but usable interactive Gemini client in < 250 LOC of Awk.
2021-05-03 02:25:09 -04:00
- [gembro](https://git.sr.ht/~rafael/gembro) (Go) - gemini client using [Bubble Tea](https://github.com/charmbracelet/bubbletea).
2022-06-08 09:19:39 -04:00
- [Gemcurses](https://github.com/crusom/Gemcurses) (C) - A Gemini client, written in C using ncurses.
2021-03-23 05:12:22 -04:00
- [gemini-demo-1](https://tildegit.org/solderpunk/gemini-demo-1) (Python) - minimal but usable interactive Gemini client in < 100 LOC of Python 3.
- [gemini-demo-2](https://tildegit.org/solderpunk/gemini-demo-2) (Lua) - minimal but usable interactive Gemini client in < 100 LOC of Lua.
- [gemini-demo-3](https://tildegit.org/solderpunk/gemini-demo-3) (Go) - minimal but usable interactive Gemini client in not quite < 100 LOC of Go.
- [gemini-fetch](https://github.com/RangerMauve/gemini-fetch) (Node.js) - cURL-like CLI for loading content from Gemini URLs.
- [gemivim](https://sr.ht/~k1nkreet/gemivim/) (Vim) - simple VIM plugin for browsing Gemini pages
- [gmi](https://sr.ht/~chambln/gmi) (Shell) - Tiny Gemini browser written in POSIX-compliant shell. Highly hackable, portable shell script under 200 lines.
- [gmi100](https://github.com/ir33k/gmi100) (C) - CLI Gemini client written in 100 lines of ANSI C.
2021-03-23 05:12:22 -04:00
- [gmni](https://sr.ht/~sircmpwn/gmni/) (C) - CLI utility (like curl) and line-mode browser.
- [gplaces](https://github.com/dimkr/gplaces) (C) - command-driven, terminal based Gemini client in ~1K LOC of C.
2021-04-17 05:55:34 -04:00
- [Gremlin](https://github.com/actuday6418/gremlin) (Rust) - TUI for browsing Gemini space
2021-06-26 03:59:29 -04:00
- [leo](https://github.com/shantaram3013/leo) (Python) - lightweight, prompt-driven Gemini client.
- [min](https://github.com/a-h/min) (Go) - supports advanced features like input and client certificate generation.
2021-03-23 05:12:22 -04:00
- [ncgopher](https://github.com/jansc/ncgopher) (Rust) - gopher and gemini client for the modern internet.
2023-02-21 17:21:30 -05:00
- [Offpunk](https://sr.ht/~lioploum/offpunk/) (Python) - Gemini, gopher, spartan and http/html offline-first browser.
- [Romulus](https://github.com/LukeEmmet/Romulus) (C#) - interactive TUI client with menus and mouse support
2021-08-07 08:46:01 -04:00
- [Telescope](//telescope.omarpolo.com) (C) - w3m-inspired, multi-protocol client that supports Gemini, Gopher and Finger
2021-03-28 12:56:23 -04:00
- [tinmop](https://www.autistici.org/interzona/tinmop.html) (Common Lisp) - opinionated Mastodon and Gemini client
2022-08-20 21:32:02 -04:00
- [tgmi](https://framagit.org/apm04/tgmi) (python) - full-featured CLI terminal-based Gemini client
- [vimini](https://git.sr.ht/~lufte/vimini) (Rust) - Desktop gemini browser inspired by qutebrowser and Vim.
2022-10-04 08:21:30 -04:00
2020-08-21 03:54:14 -04:00
### Graphical
#### Cross-platform
2021-03-23 05:12:22 -04:00
- [Agregore](https://github.com/RangerMauve/agregore-browser#fetch-api-for-gemini) - (Electron.js) - peer to peer web browser with support for loading Gemini pages.
2020-08-25 16:22:04 -04:00
- [Alrisha](https://git.sr.ht/~fabrixxm/alrisha) (QML) - QML-based Gemini client.
2021-03-23 05:12:22 -04:00
- [Castor](https://git.sr.ht/~julienxx/castor) (Rust) - graphical Gemini client using GTK.
2023-05-28 07:09:37 -04:00
- [Eva](https://codeberg.org/jeang3nie/eva) (Rust) - a Gemini protocol browser in Gtk4
2021-03-23 05:12:22 -04:00
- [Fafi](https://git.sr.ht/~soapdog/fafi-browser) (Racket) - graphical Gemini browser written in Racket.
2021-04-28 15:05:17 -04:00
- [Fossil](https://github.com/koyuspace/fossil) (Vala) - GTK3 Gemini browser written in Vala for desktop and mobile.
- [Galacteek](https://gitlab.com/galacteek/galacteek) (Python) - Browser for the distributed web, with support for Gemini and IPFS.
2023-09-02 16:35:38 -04:00
- [Gemalaya](https://gitlab.com/cipres/gemgemgem) (Python/QML) - Keyboard-driven Gemini browser with builtin web-to-gemini proxy
- [Gerbil](https://gitlab.com/armen138/gerbil) (Python) - Gemini and Spartan browser written in python with GTK and LibHandy for desktop and mobile
2021-03-23 05:12:22 -04:00
- [Lagrange](https://git.skyjake.fi/skyjake/lagrange) (C) - desktop GUI client with inline image viewing, multiple tabs, bookmarks and more.
- [Molasses](https://github.com/jjsimpso/molasses) (Racket) - full-featured graphical Gopher and Gemini client with tabs.
2020-08-25 16:22:04 -04:00
- [Moonlander](https://sr.ht/~admicos/moonlander/) (Rust) - the fanciest Gemini client in the entire solar system.
2021-03-23 05:12:22 -04:00
- [Kristall](https://github.com/MasterQ32/kristall) (C++) - graphical Gopher and Gemini client using QT.
2021-08-09 03:55:15 -04:00
- [spacewar](https://github.com/ResonAtom/spacewar) (Electron.js) - EXPERIMENTAL and UNSTABLE Gemini browser running on Electron.
2022-10-04 08:21:30 -04:00
- [Geopard](https://github.com/ranfdev/Geopard) (Rust) - A colorful, adaptive gemini browser.
#### Mobile
2022-06-08 09:19:39 -04:00
- [Buran](https://github.com/Corewala/Buran) (Kotlin/Java) - Gemini browser for Android, fork of Ariane.
- [Deedum](https://github.com/snoe/deedum) (Dart) - an Android and iOS client made with Flutter.
2021-03-23 05:12:22 -04:00
- [Elaho](https://github.com/pitr/gemini-ios) (Swift) - full featured Gemini protocol browser for iOS.
- [Gem](https://open-store.io/app/gem.aaron) (Python) - Gemini client for Ubuntu Touch.
- [Xenia](https://gitlab.com/tslocum/xenia) (Java) - Gemini proxy for Android.
- [Phaedra](https://oppen.digital/software/phaedra/) (Java) - Gemini client for Android supporting even very old ones; author recommends using Ariana if a current Android is at hand.
2023-05-15 12:53:32 -04:00
- [Rosy Crow](https://rosy-crow.app) (C#) - An Android client built using .NET MAUI.
2020-08-21 03:54:14 -04:00
#### Windows
2021-03-23 05:12:22 -04:00
- [GemiNaut](https://www.marmaladefoo.com/pages/geminaut) (C#) - user friendly graphical Gemini client for MS Windows.
2022-06-19 02:00:55 -04:00
#### MacOS
- [Jimmy](https://github.com/jfoucher/Jimmy) (SwiftUI) - a lightweight native Gemini client for MacOS
#### AmigaOS
- [AmiGemini](http://aminet.net/package/comm/net/AmiGemini)
2022-06-19 02:00:55 -04:00
2020-08-21 03:54:14 -04:00
## Programming
- [Agunua](https://framagit.org/bortzmeyer/agunua) (Python) - Gemini library to write clients. Includes IRI support, gemtext parsing and CLI tool.
2021-03-23 05:12:22 -04:00
- [derhuerst/gemini](https://github.com/derhuerst/gemini) (Node.js) - server & client lib.
2020-11-02 03:08:57 -05:00
- [a-h/gemini](https://github.com/a-h/gemini) (Go) - Applications and libraries for building applications on Gemini.
- [cuipod](https://github.com/aegis-dev/cuipod) (C#) - Simple yet flexible framework for Gemini protocol server.
- [gemclient](https://github.com/Koshroy/gemclient) (Nim) - rich client library for the Gemini Protocol.
- [gemget](https://github.com/makew0rld/gemget) (Go) - Command line downloader for the Gemini protocol.
2021-10-15 10:15:13 -04:00
- [gemini](https://github.com/kulak/gemini) (Go) - Server side Gemini protocol + Titan protocol implementation that matches standard GO http API.
2021-03-23 05:12:22 -04:00
- [gig](https://github.com/pitr/gig) (Go) - Gemini framework.
- [gmir](https://github.com/codesoap/gmir) (Go) - A reader for gmi files
- [go-gemini](https://git.sr.ht/~yotam/go-gemini) (Go) - library that provides an easy interface to create client and servers.
- [go-gemini](https://github.com/makew0rld/go-gemini) (Go) - more recent fork of the library above.
- [gusmobile](https://git.sr.ht/~rwa/gusmobile) (Python) - gemini client for Pyhton (used by geminispace.info)
- [html2gemini](https://github.com/LukeEmmet/html2gemini) (Go) - package library to convert HTML to Gemini (see also html2gmi for command line application)
2021-03-23 05:12:22 -04:00
- [ignition](https://github.com/cbrews/ignition) (Python) - Gemini client transport/request library for python3.
2021-02-01 07:32:52 -05:00
- [kaksik](https://github.com/sergetymo/kaksik) (Deno/TypeScript) - middleware library for building server applications.
- [ruby-net-text](https://git.umaneti.net/ruby-net-text/) (Ruby) - Gemini support in Net::* and URI::* stack.
- [SmolNetSharp](https://github.com/LukeEmmet/SmolNetSharp) (C#) - cross platform .NET (core/framework) client library for building Gemini and Gopher clients
- [warmuuh/jemini](https://github.com/warmuuh/jemini/tree/main/gemini-client)(Java) - reactive gemini-client, part of jemini-project
- [geminic](https://github.com/WarpEngineer/geminic) (Erlang) - An Erlang library for building Gemini protocol clients.
2021-12-20 03:51:36 -05:00
- [dremini](https://github.com/marty1885/dremini) (C++) - Highly concurrent C++ Gemini server and client library
- [Opal](https://github.com/aschuhardt/Opal) (C#) - Gemini client library targeting .NET Standard 2.0. Built-in support for TOFU and client certificates.
2022-11-20 10:49:38 -05:00
- [gemax](https://github.com/ninedraft/gemax) (Go) - a golang gemini stack, inspired by go STD http library.
## Related Specifications
- [GemPub Specification](https://codeberg.org/oppenlab/gempub) - Gempub, the Gemini e-book (and capsule archive) container specification.
2021-06-25 09:08:04 -04:00
- [Gemini TinyLog Specification](https://codeberg.org/bacardi55/gemini-tinylog-rfc) - 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](https://portal.mozz.us/gemini/mozz.us/files/rfc_gemini_favicon.gmi) - Optional extension by Michael Lazar to the Gemini Protocol, with the goal to set a Unicode emoji as favicon for a site.
## Resources
2020-08-25 16:22:04 -04:00
- [Gemini Specification](https://gemini.circumlunar.space/docs/specification.html) - the Gemini protocol specification.
2021-03-23 05:12:22 -04:00
- [gemini.circumlunar.space/software](https://portal.mozz.us/gemini/gemini.circumlunar.space/software/) - list of Gemini software.
- [transjovian.org/gemini](https://transjovian.org/gemini/) - wiki space dedicated to Gemini communities and software.
2020-08-21 03:54:14 -04:00
## Servers
2021-03-23 05:12:22 -04:00
- [Agate](https://github.com/mbrubeck/agate) (Rust) - simple Gemini server for static files.
2022-01-23 17:43:56 -05:00
- [aiogemini](https://github.com/rcarmo/aiogemini) (Python) - minimalist Python 3 `asyncio` server.
2021-05-15 10:24:52 -04:00
- [Apogee](https://github.com/bunburya/apogee) (Kotlin) - Gemini server written in Kotlin for the JVM.
2022-08-28 11:50:14 -04:00
- [atlas](https://github.com/Alumniminium/atlas) (C#) - .NET7 Gemini/Titan/Spartan server w/ vhost and cgi support.
2020-11-02 03:08:57 -05:00
- [a-h/gemini](https://github.com/a-h/gemini) (Go) - Server for Linux, Mac, Raspberry Pi. Supports SNI for multiple domains on the same server, has Docker image.
2021-03-23 05:12:22 -04:00
- [blizanci](https://github.com/mk270/blizanci) (Erlang) - server designed primarily for robustness and security.
- [Denoscuri](https://github.com/caranatar/denoscuri) (Typescript) - simple Gemini server written using Deno and Typescript.
- [Dʒɛmɪni](https://sr.ht/~rwv/dezhemini/) (Racket) - server with features like SNI and CGI.
- [Diamant](https://git.umaneti.net/diamant/) (Ruby) - simple Gemini server for static files.
2021-04-24 20:17:47 -04:00
- [Doppio](https://github.com/bhavanki/doppio) (Java) - single-JAR Gemini server with CGI, authentication, and Atom feed support.
2021-03-23 05:12:22 -04:00
- [Duckling proxy 🦆](https://portal.mozz.us/gemini/gemini.marmaladefoo.com/blog/31-Aug-2020_The_Duckling_Proxy.gmi) (Go) - scheme-specific filtering proxy for Gemini clients to access the web.
- [Earl Server](https://github.com/mrletourneau/EarlServer) (Kotlin) - Gemini fileserver for the JVM.
2021-10-18 06:32:43 -04:00
- [Enceladus](https://github.com/modotte/Enceladus) (F#) - A simple Gemini protocol server implementation in .NET Core and F#.
2021-03-23 05:12:22 -04:00
- [Ergol](http://adele.work/code/ergol/ergol.gmi) (PHP) - light Gemini server able to host several capsules with different cerificates.
- [GeGoBi](https://tildegit.org/solderpunk/gegobi) (Python) - server to facilitate easy Gemini-Gopher bi-hosting.
- [Gemeaux](https://github.com/brunobord/gemeaux) (Python) - server using only the Python standard library.
2021-02-25 16:23:44 -05:00
- [gemini-ipfs-gateway](https://git.sr.ht/~hsanjuan/gemini-ipfs-gateway) (Go) - an IPFS Gateway that makes IPFS content available over the Gemini protocol.
2021-03-23 05:12:22 -04:00
- [gemini-server](https://hackage.haskell.org/package/gemini-server) (Haskell) - lightweight server for the Gemini protocol.
- [geminid](https://github.com/jovoro/geminid/) (C) - Gemini Server in C.
- [geminid](https://www.upyum.com/cgit.cgi/geminid) (Scheme) - Gemini Server in CHICKEN Scheme.
- [gemini-php](https://opensource.glasgow.social/gemini-php) (PHP) - simple Gemini server in PHP.
2021-02-23 14:52:29 -05:00
- [JAGS-php](https://github.com/codeandcreate/JAGS-PHP) (PHP) - fork of gemini-php with support of dynamic pages.
2022-03-27 21:08:28 -04:00
- [jsonresume-gemini](https://github.com/michaelcaplan/jsonresume-gemini) (PHP) - single purpose server implementation of the Gemini protocol to serve up your JSON Resume.
2021-01-20 14:55:40 -05:00
- [geminim](https://github.com/ardek66/geminim) (Nim) - an async lightweight Gemini server made in Nim.
2021-03-28 12:56:23 -04:00
- [gmid](https://github.com/omar-polo/gmid) (C) - simple and secure Gemini server.
2021-07-11 08:53:47 -04:00
- [gmifs](https://github.com/n0x1m/gmifs) (Go) - Gemini file server with auto indexing support, caching and auto TLS key pair creation.
2022-06-27 23:23:44 -04:00
- [gmnd](https://code.smolnet.org/micke/gmnd) (Python) - packaged Gemini server with support for CGI and indexing
2021-03-23 05:12:22 -04:00
- [gmnisrv](https://sr.ht/~sircmpwn/gmnisrv/) (C) - high-performance Gemini server for POSIX systems.
- [Gemserv](https://portal.mozz.us/gemini/80h.dev/projects/gemserv/) (Rust) - server with features like vhosts, CGI, SCGI, reverse-proxying and more.
2020-08-25 16:22:04 -04:00
- [Germinal](https://github.com/jfmcbrayer/germinal) (Common Lisp) - serves any type of document with an appropriate mime type.
2020-12-07 13:40:06 -05:00
- [GLV-1.12556](https://github.com/spc476/GLV-1.12556) (Lua) - the first Gemini protocol server with a lot of features.
2021-03-23 05:12:22 -04:00
- [Hydepark](https://github.com/spektom/hydepark) (Rust) - discussion forum application for Gemini.
- [Jetforce](https://github.com/michael-lazar/jetforce) (Python) - built-in static file server with support for gemini directories and CGI scripts.
- [jemini](https://github.com/warmuuh/jemini)(Java) - dual gemini/http server on top of jetty with spring-boot integration
- [laika](https://sr.ht/~gbmor/laika/) (Rust) - async Gemini protocol server.
2022-06-19 10:17:36 -04:00
- [levior](https://gitlab.com/cipres/levior) (Python) - HTTP to Gemini gateway, allowing you to browse regular websites with any Gemini client
2022-06-21 15:29:01 -04:00
- [Loxy](https://github.com/aschuhardt/Loxy) (C#) - Gemini to HTTP proxy, exposes any capsule to the web as stylable HTML (based on the Opal library).
2021-03-23 05:12:22 -04:00
- [Lupa Pona](https://github.com/kensanata/lupa-pona) (Perl) - simple single directory Gemini server.
2022-12-27 18:48:57 -05:00
- [Maple](https://github.com/gemrest/maple) (C++) - A very simple static Gemini server, now with Titan support!
2021-03-23 05:12:22 -04:00
- [Marami](https://github.com/MagnificentPako/Marami/) (Prolog) - server written in Prolog.
- [Molly Brown](https://tildegit.org/solderpunk/molly-brown) (Go) - full-featured Gemini server implemented in Go.
- [MoonGem](https://sr.ht/~panda-roux/MoonGem) (C) - gemini server with inline Lua scripting for dynamic content generation.
2021-03-23 05:12:22 -04:00
- [net-gemini](https://github.com/jackdoe/net-gemini) (Go) - gemini server inspired by Molly Brown.
- [northstar](https://github.com/panicbit/northstar) (Rust) - gemini server implementation.
- [Orbit](https://tildegit.org/sumpygump/orbit) (PHP) - Gemini server implemented in PHP.
- [Phoebe](https://alexschroeder.ch/cgit/phoebe/about/) (Perl) - Gemini/web wiki.
- [pollux](https://git.sr.ht/~julienxx/pollux) (Rust) - simple server that will only serve one `index.gemini` file.
- [rc-gemd](https://sr.ht/~moody/rc-gemd) (Shell) - simple Gemini server written in rc (for plan9 operating systems).
- [Satellite](https://sr.ht/~gsthnz/satellite/) (Go) - small Gemini server for serving static files.
- [Shavit](https://git.sr.ht/~yotam/shavit) (Go) - configurable Gemini server for UNIX operating systems.
2022-04-26 15:53:23 -04:00
- [Smolver](https://gitlab.com/g2764/smolver) (Swift) - a small Gemini server.
2021-03-23 05:12:22 -04:00
- [Space-Age](https://gitlab.com/lambdatronic/space-age) (Clojure) - Gemini server written in Clojure.
- [Taurus](https://git.sr.ht/~garritfra/taurus)(Rust) - A Concurrent Gemini Server.
2021-03-23 05:12:22 -04:00
- [Titan](https://github.com/jahzielv/titan) (Rust) - simple TOML-configured Gemini server and an Express-like Gemini server framework.
- [twins](https://code.rocketnine.space/tslocum/twins) (Go) - YAML-configured Gemini server supporting vhosts, FastCGI and reverse-proxying.
2021-03-23 05:12:22 -04:00
- [vger](https://tildegit.org/solene/vger) (C) - Gemini server written in C used with inetd.
2022-03-30 22:35:57 -04:00
- [Windmark](https://github.com/gemrest/windmark) (Rust) - An elegant and highly performant async Gemini server framework
- [StaticGeminiServer](https://github.com/marek22k/StaticGeminiServer) ([Codeberg](https://codeberg.org/mark22k/StaticGeminiServer)) (Ruby) - a simple more or less stable gemini server for static files
2022-08-18 15:41:53 -04:00
- [kepler](https://github.com/ambyshframber/kepler) - simple gemini server in rust
2023-01-09 10:41:09 -05:00
- [Mehari](https://github.com/Psi-Prod/Mehari) - Featureful server in OCaml
2024-02-05 20:12:15 -05:00
- [β-Doku](https://github.com/YGGverse/betadoku) (PHP) - DokuWiki Satellite for Gemini Protocol
2020-08-21 03:54:14 -04:00
## Services
- __gemini://warmedal.se/~antenna/__ - Geminispace aggregator
2021-02-10 00:56:36 -05:00
- __gemini://flounder.online__ ([https version](https://flounder.online/)) - host small Gemini web pages over https and Gemini ([repo](https://github.com/alexwennerberg/flounder)).
- __gemini://geminispace.info__ - public search provider for Gemini ([repo](https://sr.ht/~rwa/geminispace.info)).
2021-02-17 17:46:33 -05:00
- __gemini://geddit.glv.one__ - interactive link service (with comments).
2021-03-23 05:12:22 -04:00
- __gemini://glv.one__ - free platform as a service (PaaS) that runs any Gemini server (packaged as a Docker image) in the cloud.
2021-03-28 12:56:23 -04:00
- __gemini://gemini.omarpolo.com/cgi/gempkg/__ - interface for the OpenBSD ports collection.
- __gemini://gemplex.space/__ - experimental Search Engine for Gemini written in Go
- __gemini://kennedy.gemi.dev/__ - public search provider for Gemini
2021-03-23 05:12:22 -04:00
- __gemini://tictactoe.lanterne.chilliet.eu__ - Tic Tac Toe game ([repo](https://framagit.org/MCMic/gemini-tictactoe)).
- __gemini://ur.gs/__ - translate from en->es and es->en ([repo](https://code.ur.gs/lupine/capsule/src/branch/main/src/cgi-bin/translate)).
- __gemini://rawtext.club/~sloum/geminews/__ - Daily news feeds proxied to gemini.
- __gemini://rawtext.club/~sloum/cgi/othello/__ - Play othello/reversi against a computer opponent over gemini.
- __gemini://rawtext.club/~sloum/cgi/weather__ - US weather reports by zip code.
2020-12-02 13:47:29 -05:00
- [gemlog.blue](https://gemlog.blue) - Gemini hosting from a web frontend.
2021-05-30 06:59:28 -04:00
- __gemini://houston.gmi.bacardi55.io__ - A simple tool to check if a capsule is up or not
2021-12-20 03:51:36 -05:00
- __gemini://tlgs.one__ - ([http version](https://tlgs.one)) Another public search provider for Gemini([repo](https://github.com/marty1885/tlgs)).
2024-02-03 04:51:24 -05:00
- __gemini://tlgs.one__ - ([http version](https://tlgs.one)) Another public search provider for Gemini([repo](https://github.com/marty1885/tlgs)).
2024-02-05 20:12:15 -05:00
- __gemini://betahowto.duckdns.org__ - Yggdrasil DokuWiki Satellite ([repo](https://github.com/YGGverse/betadoku))
2020-08-21 03:54:14 -04:00
## Tools
2021-02-11 06:39:05 -05:00
- [CAPCOM](https://tildegit.org/solderpunk/CAPCOM) (Python) - Atom feed aggregator for gemini.
2021-05-02 13:56:21 -04:00
- [certified](https://code.lag.net/robey/certified) (Python) - Generate TOFU TLS certificates for gemini servers.
2021-03-14 03:11:28 -04:00
- [cl-yag](git://bitreich.org/cl-yag) (Common-Lisp) - Static site generator producing gemini, gopher and html.
- [comitium](https://git.nytpu.com/comitium) (C) - A feed aggregator for gemini supporting many formats and protocols.
2022-05-25 19:49:38 -04:00
- [gemini-antenna](https://notabug.org/tinyrabbit/gemini-antenna) (Python) - A feed-aggregator for Gemini, triggered by submissions.
2021-03-23 05:12:22 -04:00
- [geminize](https://addons.mozilla.org/en-US/firefox/addon/geminize/) - Firefox addon that redirects gemini:// URLs and links to a customizable HTTP-to-Gemini proxy.
- [gemlog.sh](https://git.sr.ht/~nytpu/gemlog.sh) (Bash) - Utility for writing and managing gemini logs (gemlogs) and atom feeds (simple gemini static site generator/framework).
2020-12-08 01:45:15 -05:00
- [gem.git](https://git.sr.ht/~fkfd/git.gmi/) (Python) - git frontend CGI script.
2021-03-23 05:12:22 -04:00
- [gemini_http](https://github.com/cyevgeniy/gemini_http) (Go) - simple tool for viewing gemini files that are placed on a http server.
- [gemmit](https://github.com/t-900-a/gemmit) (Go) - social news aggregation and web content rating website for the gemini protocol.
2021-09-19 11:12:31 -04:00
- [GemPress](https://git.sr.ht/~aprates/gempress) (C) - Yet another Gemini publishing framework with HTML and Atom support, written in Bash and Sugar-C.
2022-05-10 04:27:59 -04:00
- [gemtexter](https://codeberg.org/snonux/gemtexter) (Bash) - Site generator and blog engine for Gemini. Generates Atom and Gemfeeds , and also does Gemtext to HTML and Markdown conversion.
2020-08-27 11:24:31 -04:00
- [gloggery](https://github.com/kconner/gloggery) (Go) - basic static site generator for blogs in Gemini.
2021-03-23 05:12:22 -04:00
- [gmitohtml](https://gitlab.com/tslocum/gmitohtml) (Go) - proxy that renders Gemini pages using HTML.
2021-10-11 09:14:15 -04:00
- [gmnigit](https://git.sr.ht/~kornellapacz/gmnigit) (Go) - static git gemini viewer.
2021-03-23 05:12:22 -04:00
- [gssg](https://git.sr.ht/~gsthnz/gssg) (Go) - simple gemini static site generator. Generates pages, index and atom feeds.
- [kiln](https://git.sr.ht/~adnano/kiln) (Go) - simple static site generator for Gemini sites.
- [Lupa](https://framagit.org/bortzmeyer/lupa) - crawler to explore the geminispace and make statistics (you can see them at __gemini://gemini.bortzmeyer.org/software/lupa/stats.gmi ).
- [Manisha](https://framagit.org/bortzmeyer/manisha) - Nagios (and compatible, such as Icinga) plugin to monitor Gemini servers.
2020-12-07 13:40:06 -05:00
- [spacewalk](https://tildegit.org/sloum/spacewalk) (Go) - Page-hash based feed aggregator for gemini.
2021-03-23 05:12:22 -04:00
- [MastoGem](https://git.rdelaage.ovh/rdelaage/mastoGem) (Go) - Mastodon proxy for Gemini.
2021-04-14 19:39:23 -04:00
- [Hugo-2-Gopher-and-Gemini](https://github.com/mkamarin/Hugo-2-Gopher-and-Gemini) (Python) - A Hugo theme to convert a Hugo site to Gemini or Gopher.
- [Gopher-and-Gemini-Walker](https://github.com/mkamarin/Gopher-and-Gemini-Walker) (Python) - Terminal client (without network connectivity) to navigate a folder structure containing a Gemini capsule or Gopher hole.
- [Gemini Diagnostics](https://github.com/michael-lazar/gemini-diagnostics) - A torture test for gemini servers
### Gemtext converters
- [gemgen](https://sr.ht/~kota/gemgen/) (Go) - A Markdown to Gemtext generator.
- [gemini-pandoc-lua-filter](https://github.com/kr1sp1n/gemini-pandoc-lua-filter) (Lua) - lua filter for pandoc to output Gemini text.
- [gemini-to-html](https://github.com/RangerMauve/gemini-to-html) (Node.js) - JavaScript library for parsing Gemini pages, and for rendering them to HTML.
- [gemtext2latex](https://github.com/mk270/gemtext2latex) - tool for converting Gemtext to reasonable LaTeX and thence PDF
2022-07-02 11:20:45 -04:00
- [gemtext2md](https://github.com/mk270/gemtext2md) - tool for converting Gemtext to Markdown
- [gemtexter](https://codeberg.org/snonux/gemtexter) (Bash) - Site generator and blog engine for Gemini. Generates Atom and Gemfeeds , and also does Gemtext to HTML and Markdown conversion.
- [gmi2html](https://github.com/shtanton/gmi2html) (Zig) - tiny gemtext to HTML converter with a focus on performance.
- [gmi2html](gemini://gemini.thegonz.net/gmi2html.sed) (Sed) - sed script to convert text/gemini to html.
- [gmi-web](https://codeberg.org/talon/gmi-web) (JS) - generate _semantic_ HTML styled for readability and mobile-friendliness.
- [gmnhg](https://git.tdem.in/tdemin/gmnhg) (Go) - renders a Hugo site to a Gemini site.
- [Html2GeminiPy](https://github.com/Aarontheissueguy/Html2GeminiPy) (Python) - Converts Html sites to Gemini sites using markdownify and md2gemini.
- [html2gmi](https://github.com/LukeEmmet/html2gmi) (Go) - command line utility to convert HTML to gemtext
- [md2gmn](https://git.tdem.in/tdemin/gmnhg) (Go) - renders Markdown text to Gemini pages.
- [md2gemini](https://github.com/makeworld-the-better-one/md2gemini) (Python) - converter from Markdown to the Gemini text format.
- [Hugo-2-Gopher-and-Gemini](https://github.com/mkamarin/Hugo-2-Gopher-and-Gemini) (Python) - A Hugo theme to convert a Hugo site to Gemini or Gopher.
2024-02-04 12:03:43 -05:00
- [gemini-php](https://github.com/YGGverse/gemini-php) (PHP) - Composer library for Gemini - includes DokuWiki converter, file-system operations and other API
### Syntax Highlighting
2020-12-07 13:40:06 -05:00
- [gemini-vim-syntax](https://tildegit.org/sloum/gemini-vim-syntax) - text/gemini syntax highlighting for vim.
- [gemini.el](https://git.carcosa.net/jmcbray/gemini.el) - text/gemini syntax highlighting for emacs.
- [gemini.kak](https://github.com/kakoune-editor/kakoune-extra-filetypes/blob/master/rc/gemini.kak) - text/gemini syntax highlighting for kakoune.
- [gemini.nanorc](https://github.com/yzzyx-network/nanorc/blob/master/gemini.nanorc) - text/gemini syntax highlighting for nano.
2021-02-18 00:21:23 -05:00
- [gemini.sublime-syntax](https://github.com/adiabatic/gemini.sublime-syntax) - text/gemini syntax highlighting for bat (and maybe Sublime Text).
2021-03-27 11:52:19 -04:00
- [gemini.yml](https://github.com/zyedidia/micro/blob/master/runtime/syntax/gemini.yaml) - text/gemini syntax highlighting for micro.
- [language_gmi](https://github.com/lite-xl/lite-xl-plugins/blob/master/plugins/language_gmi.lua) - gemtext syntax highlighting for lite-xl
- [gemini-intellij-plugin](https://github.com/michael-lazar/gemini-intellij-plugin/) - text/gemini syntax highlighting for IntelliJ IDEs
2020-08-21 03:54:14 -04:00
## Web proxies
- [Mozz.us portal](https://portal.mozz.us/gemini/gemini.circumlunar.space/)
2020-09-07 01:55:19 -04:00
- [Soweli Lukin](https://alexschroeder.ch/soweli-lukin)
2020-08-21 03:54:14 -04:00
- [Vulpes proxy](https://proxy.vulpes.one/gemini/gemini.circumlunar.space/)
- [koyu.space GemProxy](https://gemproxy.koyu.space)
2022-08-18 15:41:53 -04:00
- [Wobbly](https://www.warmedal.se/~wobbly/)
- [Tildeverse Gemini Proxy](https://gemini.tildeverse.org)
2020-08-21 03:54:14 -04:00
2021-03-27 21:34:51 -04:00
## Bots
- [Fortune Teller Bot](https://github.com/t-900-a/gemini-fortune-bot) - Generates a fortune gmi file, gemlog/index.gmi, and atom.xml every time the bot is executed
2020-08-21 03:54:14 -04:00
---
[1]: https://gemini.circumlunar.space/