Introduction
Rogallo is a terminal-based client for browsing Geminispace, Spartanspace, Gopherspace, Nexspace, and Fingerspace. Its key features include:
- Support for the
gemini,spartan,gopher,nexandfingerprotocols - Bookmarks management with search
- Location history tracking with search
- Backward and forward page navigation
- Copy-to-clipboard support for URIs or page content
- Configurable home page
- Full mouse navigation and interaction support
- Built-in source viewer
- Context-sensitive help screens
- Command palette for quick command discovery and execution
- Automatic handoff of unknown MIME types to the operating system
- Optional rendering (on by default) of ANSI escape sequences in pages
- Local Gemtext file viewing
- Built-in theme selection, plus support for user-supplied custom UI themes
- Persistent configuration across sessions
- Fully responsive layout that adjusts dynamically to terminal resizing
- Cross-platform support for macOS, GNU/Linux, Windows, and other operating systems running modern Python
Key features for Gemini protocol support include:
- User input handling (
1xresponses), including masked inputs for sensitive fields- Optional external text editor integration for composing inputs
- In-application generation of self-signed client certificates, with persistent per-capsule management
- Redirection handling (
3xresponses) - Flexible capsule certificate verification for both CA-signed and self-signed certificates
Installing
uv
The application can be installed using uv:
uv tool install rogallo
If you don't have uv installed you can use uvx.sh to
perform the installation. For GNU/Linux or macOS or similar:
curl -LsSf uvx.sh/rogallo/install.sh | sh
or on Windows:
powershell -ExecutionPolicy ByPass -c "irm https://uvx.sh/rogallo/install.ps1 | iex"
pipx
The application can be installed using pipx:
pipx install rogallo
Once installed run the rogallo command.
Running Rogallo
Once you've installed Rogallo using one of the above methods,
you can run the application using the rogallo command. A number of command
line commands and switches are available:
rogallo --help
usage: rogallo [-h] [-t THEME] [-v]
{bindings,diagnostics,diag,directories,dirs,d,license,licence,open,themes} ...
A terminal-based client for small web protocols.
positional arguments:
{bindings,diagnostics,diag,directories,dirs,d,license,licence,open,themes}
Available commands
bindings List commands that can have their bindings changed
diagnostics (diag) Show diagnostic information about the application
directories (dirs, d)
Show the directories created and used by Rogallo
license (licence) Show license information
open Open a location
themes List the available themes that can be used with
--theme
options:
-h, --help show this help message and exit
-t, --theme THEME Set the theme for the application (see `themes`
command for available themes)
-v, --version Show version information
v1.10.0
bindings
Prints the application commands whose keyboard bindings can be modified, giving the defaults too.
rogallo bindings
AboutThisPage - Show information about the current page
Default: f7
AddLocationToBookmarks - Add the current location to the bookmarks
Default: ctrl+b
Backward - Move backward through history
Default: ctrl+left_square_bracket
ChangeCommandLineLocation - Swap the position of the command line between top and bottom
Default: ctrl+up, ctrl+down
ChangeTheme - Change the application's theme
Default: f9
ClearCache - Clear the cache for all content
Default: shift+f5
CopyDocumentToClipboard - Copy the current document to the clipboard.
Default: alt+shift+c
CopyLocationToClipboard - Copy the current location to the clipboard.
Default: ctrl+shift+c
Forward - Move forward through history
Default: ctrl+right_square_bracket
GoHome - Go to the home page
Default: ctrl+h
GoToParent - Go to the parent directory
Default: alt+up
GoToRoot - Go to the root directory
Default: alt+shift+up
HandOffToOperatingSystem - Hand off the current location to the operating system
Default: ctrl+shift+o
Help - Show help for and information about the application
Default: f1, ?
JumpToCommandLine - Jump to the command line
Default: /, ctrl+1
JumpToDocument - Jump to the document viewer
Default: ctrl+slash, ctrl+g, ctrl+2
JumpToSidebar - Jump to the sidebar
Default: ctrl+3
OpenFile - Open a file in the local filesystem
Default: ctrl+o
PipeDocument - Pipe the current document to an external command
Default: ctrl+shift+p
Quit - Quit the application
Default: f10, ctrl+q
Reload - Reload the current document
Default: ctrl+r, f5
SaveSource - Save the source of the current document to a file
Default: ctrl+s
SearchBookmarks - Search the bookmarks for a location
Default: f3
SearchHistory - Search the history for a location
Default: f2
SetHome - Set the home page to a specific location
Default: alt+h
SetHomeToCurrentLocation - Set the home page to the current location
Default: ctrl+shift+h
StripeLinks - Toggle the striping of links in the document viewer
Default: f8
ToggleANSIEscapeSequenceHandling - Toggle the handling of ANSI escape sequences in text content
Default: shift+f6
ToggleBookmarksManager - Toggle the display of the bookmarks viewer
Default: shift+f3
ToggleCosyLinkNumbers - Toggle the position of link numbers when they're being displayed
Default: super+f8
ToggleEmojiRemoval - Toggle the removal of emoji from text content
Default: f6
ToggleHistoryManager - Toggle the display of the history viewer
Default: shift+f2
ToggleLinkNumbers - Toggle the display of link numbers in the document viewer
Default: shift+f8
ToggleView - Toggle between rendered and source view of the document
Default: f4
ViewChangeLog - View the Rogallo ChangeLog
Default: ctrl+shift+l
directories
rogallo directories
This prints each of the directories where Rogallo stores cache, configuration and data files. The output will look something like this:
/Users/davep/.cache/rogallo
/Users/davep/.config/rogallo
/Users/davep/.local/share/rogallo
The exact values will, of course, depend on your own environment.
licence
Prints Rogallo's licence.
rogallo licence
Rogallo - A terminal-based client for small web protocols.
Copyright (C) 2026 Dave Pearson
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the Free
Software Foundation, either version 3 of the License, or (at your option)
any later version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
more details.
You should have received a copy of the GNU General Public License along with
this program. If not, see <https://www.gnu.org/licenses/>.
open
The open command can be used to open either a Gemtext file in the local
filesystem, or a connection to content on a supported remote service
(normally a URI starting with either gemini://, gopher:// or
finger://).
rogallo open --help
usage: rogallo open [-h] location
positional arguments:
location The location to open
options:
-h, --help show this help message and exit
themes
Shows a list of all of the themes that are available.
rogallo themes
atom-one-dark
atom-one-light
catppuccin-frappe
catppuccin-latte
catppuccin-macchiato
catppuccin-mocha
dracula
flexoki
gruvbox
monokai
nord
rose-pine
rose-pine-dawn
rose-pine-moon
solarized-dark
solarized-light
textual-dark
textual-light
tokyo-night
Use the --theme switch to set a theme from the command line.
-t, --theme
Sets Rogallo's theme; this overrides and changes any previous theme choice made via the user interface.
-v, --version
Prints the version number of Rogallo.
rogallo --version
rogallo v1.10.0
Getting help
A great way to get to know Rogallo is to read the help screen. Once in the application you can see this by pressing F1.
The help will adapt to which part of the screen has focus, providing extra detail where appropriate.
The command palette
Another way of discovering commands and keys in Rogallo is to use the command palette (by default you can call it with ctrl+p).
Questions and feedback
If you have any questions about Rogallo, or you have ideas for how it might be improved, do please feel free to visit the discussion area and ask your question or suggest an improvement.
When doing so, please do search past discussions and also issues current and previous to make sure I've not already dealt with this, or don't have your proposed change already flagged as something to do.