Python Gemini CLI client. Upgraded, thicc version of solderpunk/Gemini-demo-1.
Go to file
Wholesomedonut dcc4b804d2 Forked from solderpunk's repo
Added all of my current changes to gemini-demo.py, updated README.md
and LICENSE
2020-09-06 19:35:18 -06:00
.gitignore Initial commit 2019-06-24 10:41:14 -04:00
LICENSE Forked from solderpunk's repo 2020-09-06 19:35:18 -06:00
README.md Forked from solderpunk's repo 2020-09-06 19:35:18 -06:00
gemini-demo.py Forked from solderpunk's repo 2020-09-06 19:35:18 -06:00

README.md

asparagus

Larger, more functional version of solderpunk's gemini-demo-1, which was a Gemini client in <=100 LOC in Python 3.

Mine is already 50% larger.

Why the fork?

I really enjoyed solderpunk's work. Quick, clean, and tiny.

I just wanted to try my luck at getting a more fleshed-out app going.

I've never done FOSS contributions before today. Consider this repo my beginning!

I'm literally developing this entirely on an iPad Pro for kicks and giggles, using:

  • Pythonista
  • Working Copy

I have no idea how long it'll last, if it even will at all.

Capabilities

This fork has all of gemini-demo-1's functionality:

  • Has a minimal interactive interface for "Gemini maps"
  • Will print plain text in any encoding if it is properly declared in the server's response header
  • Will handle binary files using programs specified in /etc/mailcap (so you can, e.g. view images)
  • Will follow redirects
  • Will report errors
  • Does NOT DO ANY validation of TLS certificates

IN addition to:

  • Has session-persistent history that you can repeatedly maneuver through
  • Descriptive error texts
  • More keyboard commands and CLI-accessible help text.

Usage

Run the script and you'll get a prompt. Type a Gemini URL (the scheme is implied, so simply entering e.g. gemini.conman.org will work) to visit a Gemini location.

If a Gemini menu is visited, you'll see numeric indices for links, ala VF-1 or AV-98. Type a number to visit that link.

Press h to see a printout of your history, b to go back a page, and f to go forward a page.

Type ? to see a brief help text inside the client.

Press q to quit.