Extensible web browser in Common Lisp

Upstream URL



Atlas Engineer LLC


BSD 3-Clause

1Nyxt browser

Nyxt [nýkst] is a keyboard-driven web browser designed for power users. Inspired by Emacs and Vim, it has familiar keybindings (Emacs, vi, CUA), and is infinitely extensible in Lisp.

If you like Nyxt and you would like to help future development, please give us a star, spread the word, and support us on Patreon, thank you!

Attention: Nyxt is under active development. Feel free to report bugs, instabilities or feature wishes.


For an exhaustive description of all of the features, please refer to themanual.

2.1Fast tab switching

Switch easily between your open tabs via fuzzy search. If you are looking for https://www.example.com, you could type in ele, exa, epl, or any other matching series of letters.

2.2Multiple marking

Commands can accept multiple inputs, allowing you to quickly perform an operation against multiple objects. In the example below we search for cactuses, and open up several images simultaneously:

2.3Powerful bookmarks

Bookmark a page with tags. Search bookmarks with compound queries. Capture more data about your bookmarks, and group and wrangle them in any way you like.

2.4Multi tab search

Search multiple tabs at the same time, and view all the results in a single window. Jump quickly through your open tabs to find what you need.

2.5History as a tree

History is represented as a tree that you can traverse. Smarter than the "forwards-backwards" abstraction found in other browsers, the tree makes sure you never lose track of where you've been.

3Getting started

3.1Install Nyxt

Nyxt supports:

  • GNU/Linux
  • macOS (unofficial)
  • FreeBSD (unofficial)

Nyxt has engine support for WebKit and experimental support for WebEngine/Blink.

Please find pre-built binaries at Nyxt's downloads page. Nyxt is available on the following platforms:

  • Alpine.
  • Debian and derivatives such as Ubuntu and Linux Mint.
  • MacPorts.
  • Arch Linux: Install with pacman -Syu nyxt.
  • Nix: Install with nix-env --install nyxt.
  • Guix: Install with guix install nyxt.
  • Void: Install with xbps-install nyxt.
  • OpenSuse (user-maintained package of the latest `master` build):
    • Tumbleweed:
          zypper ar https://download.opensuse.org/repositories/home:/bobbie424242/openSUSE_Tumbleweed/ nyxt-git
    • LEAP:
          zypper ar https://download.opensuse.org/repositories/home:/bobbie424242/15.4/ nyxt-git

    Then install with zypper in nyxt.

To install from source, please refer to the developer's manual.

3.2Documentation & Customization

For full documentation about Nyxt, how it works, and how to extend it please refer to the embedded manual. To get started, run the manual command (press control + space, type manual and confirm with return).

If you want to help with development, or build Nyxt from source, read the developer's documentation at documents/README.org.

3.3History of changes

If you are running a recent version of Nyxt please run the changelog command. For older versions, please refer to the CHANGELOG.

Dependencies (59)

  • GitHub
  • Quicklisp