.github | ||
bookmarks | ||
cache | ||
client | ||
config | ||
contrib/themes | ||
display | ||
logger | ||
renderer | ||
structs | ||
webbrowser | ||
.gitignore | ||
.golangci.yml | ||
.goreleaser.yml | ||
amfora.desktop | ||
amfora.go | ||
CHANGELOG.md | ||
default-config.toml | ||
demo-large.gif | ||
go.mod | ||
go.sum | ||
LICENSE | ||
logo.png | ||
Makefile | ||
NOTES.md | ||
README.md | ||
THANKS.md |
Amfora
![amphora logo](/makeworld-the-better-one/amfora/media/commit/d7942c68b0b018a0f6b9deb195c575562d6aaad3/logo.png)
Image modified from: amphora by Alvaro Cabrera from the Noun Project
![Demo GIF](/makeworld-the-better-one/amfora/media/commit/d7942c68b0b018a0f6b9deb195c575562d6aaad3/demo-large.gif)
Recording of v1.0.0
Amfora aims to be the best looking Gemini client with the most features... all in the terminal. It does not support Gopher or other non-Web protocols - check out Bombadillo for that.
It also aims to be completely cross platform, with full Windows support. If you're on Windows, I would not recommend using the default terminal software. Use Windows Terminal instead, and make sure it works with UTF-8. Note that some of the application colors might not display correctly on Windows, but all functionality will still work.
It fully passes Sean Conman's client torture test, including the new Unicode tests. It mostly passes the Egsam test.
Installation
Binary
Download a binary from the releases page. On Unix-based systems you might have to make the file executable with chmod +x <filename>
. You can rename the file to just amfora
for easy access, and move it to /usr/local/bin/
.
On Windows, make sure you click "Advanced > Run anyway" after double-clicking, or something like that.
Unix systems can install the desktop entry file to get Amfora to appear when they search for applications:
curl -sSL https://raw.githubusercontent.com/makeworld-the-better-one/amfora/master/amfora.desktop -o ~/.local/share/applications/amfora.desktop
update-desktop-database ~/.local/share/applications
Make sure to click "Watch" > "Releases only" in the top right to get notified about new releases!
Arch Linux
Arch Linux users can install Amfora using pacman.
sudo pacman -S amfora
Homebrew
If you use Homebrew, you can install Amfora through the official tap.
brew tap makeworld-the-better-one/tap
brew install amfora
You can update it with:
brew upgrade amfora
From Source
Click to expand
This section is for advanced users who want to install the latest (possibly unstable) version of Amfora.
Requirements:
- Go 1.13 or later
- GNU Make
Please note the Makefile does not intend to support Windows, and so there may be issues.
git clone https://github.com/makeworld-the-better-one/amfora
cd amfora
# git checkout v1.2.3 # Optionally pin to a specific version instead of the latest commit
make # Might be gmake on macOS
sudo make install # If you want to install the binary for all users
Because you installed with the Makefile, running amfora -v
will tell you exactly what commit the binary was built from.
MacOS users can also use Homebrew to install the latest commit of Amfora:
brew tap makeworld-the-better-one/tap
brew install --HEAD amfora
You can update it with:
brew upgrade --fetch-HEAD amfora
Features / Roadmap
Features in italics are in the master branch, but not in the latest release.
- URL browsing with TOFU and error handling
- Tabbed browsing
- Support ANSI color codes on pages, even for Windows
- Styled page content (headings, links)
- Basic forward/backward history, for each tab
- Input (Status Code 10 & 11)
- Multiple charset support (over 55)
- Built-in search (uses GUS by default)
- Bookmarks
- Download pages and arbitrary data
- Theming
- Check out the user contributed themes!
- Emoji favicons
- See
gemini://mozz.us/files/rfc_gemini_favicon.gmi
for details - Disabled by default, enable in config
- See
- Proxying
- Schemes like Gopher or HTTP can be proxied through a Gemini server
- Client certificate support
- Full client certificate UX within the client
- Create transient and permanent certs within the client, per domain
- Manage and browse them
- Similar to Kristall
- https://lists.orbitalfox.eu/archives/gemini/2020/001400.html
- Full client certificate UX within the client
- Subscribe to RSS and Atom feeds and display them
- Subscribing to page changes, similar to how Spacewalk works, will also be supported
- In progress on
feeds
branch
- Stream support
- Table of contents for pages
- Search in pages with Ctrl-F
- Support Markdown rendering
- Persistent history
Usage & Configuration
Please see the wiki for an introduction on how to use Amfora and configure it.
Known Bugs
- Pasting on Windows is truncated, the full paste content won't be added. (#43)
You can also check out all the issues with the bug label.
Libraries
Amfora ❤️ open source!
- cview for the TUI
- Viper for configuration and TOFU storing
- go-gemini, my forked and updated Gemini client/server library
- My progressbar fork
- go-humanize
License
This project is licensed under the GPL v3.0. See the LICENSE file for details.