ncgopher is a gopher and gemini client for the modern internet. It uses
ncurses and is written in Rust.
Gopher was developed in 1991 at the University of Minnesota, and named after the school's mascot. Gopher is a menu-driven interface that allows a user to browse for text information served off of various gopher servers.
Gemini is a new application-level internet protocol for the distribution of arbitrary files, with some special consideration for serving a lightweight hypertext format which facilitates linking between files.
Obligatory screenshot of light mode.
A gemini site viewed in dark mode.
- Gopher and gemini support
- Ncurses interface
- Keyboard commands for navigation
- Bookmarks support including custom title
- History of visited gopher holes
- Download of text files and gophermaps (Save as...)
- Download of binary files
- Menu for easy configuration
- Mouse support in some terminals
- TLS support
- Common search providers in search menu for quick access
- External commands for HTML, images and Telnet
ncgopher has no fancy installation process right now. Make sure to install
rust on your system, but the latest release can be installed through cargo:
cargo install ncgopher
To install the latest development version:
git clone https://github.com/jansc/ncgopher.git cd ncgopher cargo build cargo run
You can download ncgopher on github.com/jansc/ncgopher.
If the application crashes, I'd be interested in a backtrace. Start
the application with
RUST_BACKTRACE=1 cargo run. There is also a
debug view that can be activated with the
The software is still in alpha, and it is also my first application written in Rust. Expect lots of bugs and badly written Rust code.
ncgopher is licensed under the BSD 2-clause license.
Copyright (c) 2020, Jan Schreiber. Parts of the status bar implementation are Copyright (c) 2019, Henrik Friedrichsen