gitmyhub

nyxt

Common Lisp ★ 11k updated 4mo ago

Nyxt - the hacker's browser.

A keyboard-driven web browser for programmers, written in Common Lisp. Modeled after Emacs and Vim, it is infinitely extensible and includes tree-style history, fuzzy tab switching, and tagged bookmarks.

Common LispWebKitsetup: moderatecomplexity 4/5

Nyxt is a web browser built for people who prefer controlling their computer with the keyboard rather than the mouse. It takes inspiration from Emacs and Vim, two highly extensible text editors popular with programmers, and brings that same philosophy to browsing the web. It ships with three keybinding modes (Emacs, Vim, and CUA), so you can pick the style you already know.

The browser comes with several features designed to make navigation faster. You can switch between open tabs by typing a few letters of a URL or page title, and it uses fuzzy matching so you do not need to type exactly. You can also perform actions on multiple items at once, like opening several bookmarks simultaneously. Bookmarks support tags and compound search queries so you can organize and find them in more detail than a standard browser allows.

One unusual feature is how Nyxt handles browsing history. Instead of a simple forward and backward button, it records your navigation as a tree structure. If you visit multiple pages from a single starting point, each branch is preserved, so you can return to any earlier point without losing the other paths you explored.

Nyxt is written in Common Lisp and is designed to be extended through Lisp code. You can customize almost any behavior, define new commands, and change keybindings to suit your workflow. This makes it popular among programmers who want a browser they can reshape the same way they reshape their text editor.

The browser runs on GNU/Linux today, available through Flathub and various community-maintained packages. Support for macOS and Windows is in active development. The project welcomes bug reports and feature requests through GitHub Issues.

Where it fits