Geopard
A colorful, adaptive Gemini protocol browser for GNOME written in Rust and GTK4, with async streaming and per-domain colour theming.
Geopard is a Gemini protocol browser for the GNOME desktop, written in Rust
and GTK4. It targets users who want to explore the Gemini web — a lightweight,
privacy-respecting alternative to HTTP — from a native Linux application rather
than a terminal client. Its most distinctive touch is per-domain colour theming:
every site you visit gets a unique accent colour, making it easy to tell at a
glance which capsule (Gemini-speak for "site") you are browsing.
Features
- Per-domain colour theming — each Gemini capsule is automatically assigned a unique colour, giving the browser visual personality and making capsule identity immediately recognisable
- Async streaming — pages load progressively using Rust's async/await and
async-std, so even slow connections show content as it arrives rather than waiting for a full download - Instant history navigation — visited pages are cached in memory; back and forward navigation is instantaneous without re-fetching
- Binary file downloads — non-text responses (images, PDFs, archives) download automatically with a progress indicator; downloads can be cancelled by navigating away
- Configurable — settings and the bookmark list live in
~/.config/geopard/(or~/.var/app/com.ranfdev.Geopard/config/geopard/for the Flatpak) - Adaptive UI — the interface scales to narrow windows and mobile form factors
- Keyboard navigation — browse without leaving the keyboard using standard GTK navigation shortcuts
Installation
Flatpak from Flathub is the primary distribution channel and works on any Linux distribution with Flatpak support:
flatpak install flathub com.ranfdev.Geopard
For Debian/Ubuntu and Fedora, the Flatpak above is the easiest path. Pre-built binaries for each release are available on the releases page.
# Arch Linux (AUR)
yay -S geopard# Nix (with flakes enabled)
nix build github:ranfdev/Geopard
./result/bin/geopard
# Or via nixpkgs
nix-env -iA nixpkgs.geopard
To build from source you need Rust (stable), Meson, and the GTK4 development headers:
# Install build dependencies (Debian / Ubuntu)
sudo apt install meson libgtk-4-dev pkg-config libssl-dev
# Install build dependencies (Fedora)
sudo dnf install meson gtk4-devel pkg-config openssl-devel
# Clone and build
git clone https://github.com/ranfdev/Geopard.git
cd Geopard
meson --prefix=/usr build
ninja -C build
sudo ninja -C build installUsage
Launch Geopard from your application menu, or run:
# Flatpak
flatpak run com.ranfdev.Geopard
# Native install
geopardBrowsing a Gemini capsule
Type or paste a gemini:// URL into the address bar and press Enter. Geopard
streams the response as it arrives. Links in Gemini pages are rendered as
clickable buttons; click one to follow it.
# Some capsules to try
gemini://gemini.circumlunar.space/
gemini://gemi.dev/
gemini://kennedy.gemi.dev/Configuring Geopard
Geopard reads its configuration from a plain text file:
# Flatpak config location
~/.var/app/com.ranfdev.Geopard/config/geopard/config
# Native install config location
~/.config/geopard/configKeyboard shortcuts
| Action | Shortcut |
|---|---|
| Focus address bar | Ctrl+L |
| Go back | Alt+Left |
| Go forward | Alt+Right |
| Reload | Ctrl+R |
| Add bookmark | Ctrl+D |
Geopard vs other Gemini clients
| Client | Language | GUI | Streaming | Colour theming |
|---|---|---|---|---|
| Geopard | Rust + GTK4 | ✅ | ✅ | ✅ |
| Lagrange | C + SDL2 | ✅ | ✅ | ❌ |
| Kristall | C++ + Qt | ✅ | ❌ | ❌ |
| amfora | Go | TUI | ✅ | ❌ |
| bombadillo | Go | TUI | ❌ | ❌ |
Geopard is the natural choice for GNOME users who want a native GTK4 Gemini
browser. Lagrange is the most feature-complete cross-platform option if you need
tabs, bookmarks sync, or subscriptions. For a terminal workflow, amfora is the
most polished TUI client.