Skip to main content

A keyboard-driven, vim-like browser based on PyQt5.

Project description

// If you are reading this in plaintext or on PyPi:
// A rendered version is available at:


image:icons/qutebrowser-64x64.png[qutebrowser logo] *A keyboard-driven, vim-like browser based on PyQt5 and Qt.*

image:["Build Status", link=""]
image:["coverage badge",link=""]

link:[website] | link:[blog] |[FAQ] |[contributing] | link:[releases] |[installing]

qutebrowser is a keyboard-focused browser with a minimal GUI. It's based
on Python and PyQt5 and free software, licensed under the GPL.

It was inspired by other browsers/addons like dwb and Vimperator/Pentadactyl.

**qutebrowser's primary maintainer, The-Compiler, is currently working
part-time on qutebrowser, funded by donations.** To sustain this for a long
time, your help is needed! See the[GitHub Sponsors page] for more
information. Depending on your sign-up date and how long you keep a certain
level, you can get qutebrowser t-shirts, stickers and more!


image:doc/img/main.png["screenshot 1",width=300,link="doc/img/main.png"]
image:doc/img/downloads.png["screenshot 2",width=300,link="doc/img/downloads.png"]
image:doc/img/completion.png["screenshot 3",width=300,link="doc/img/completion.png"]
image:doc/img/hints.png["screenshot 4",width=300,link="doc/img/hints.png"]


See the[github releases
page] for available downloads and the link:doc/install.asciidoc[INSTALL] file for
detailed instructions on how to get qutebrowser running on various platforms.

Documentation and getting help

Please see the link:doc/help/index.asciidoc[help page] for available documentation
pages and support channels.

Contributions / Bugs

You want to contribute to qutebrowser? Awesome! Please read
link:doc/contributing.asciidoc[the contribution guidelines] for details and
useful hints.

If you found a bug or have a feature request, you can report it in several

* Use the built-in `:report` command or the automatic crash dialog.
* Open an issue in the Github issue tracker.
* Write a mail to the[mailinglist] at[].

For security bugs, please contact me directly at, GPG ID[0x916eb0c8fd55a072].


The following software and libraries are required to run qutebrowser:

*[Python] 3.6.1 or newer
*[Qt] 5.12.0 or newer (5.12 LTS or 5.15 recommended, Qt 6 is
not supported yet) with the following modules:
- QtCore / qtbase
- QtQuick (part of qtbase or qtdeclarative in some distributions)
- QtSQL (part of qtbase in some distributions)
- QtDBus (part of qtbase in some distributions; note that a connection to DBus at
runtime is optional)
- QtOpenGL
- QtWebEngine, or
- alternatively QtWebKit (5.212) - **This is not recommended** due to known security
issues in QtWebKit, you most likely want to use qutebrowser with the
default QtWebEngine backend (based on Chromium) instead. Quoting the[QtWebKit releases page]:
_[The latest QtWebKit] release is based on [an] old WebKit revision with known
unpatched vulnerabilities. Please use it carefully and avoid visiting untrusted
websites and using it for transmission of sensitive data._
*[PyQt] 5.12.0 or newer
for Python 3

On older Python versions (3.6/3.7/3.8), the following backports are also required:

*[importlib_resources] (Python 3.8 or older)
*[dataclasses] (Python 3.6 only)

The following libraries are optional:

*[adblock] (for improved adblocking using ABP syntax)
*[pygments] for syntax highlighting with `:view-source`
on QtWebKit, or when using `:view-source --pygments` with the (default)
QtWebEngine backend.
* On Windows,[colorama] for colored log
*[importlib_resources] on Python 3.7
or older, to improve QtWebEngine version detection when PyQtWebEngine is
installed via pip (thus, this dependency usually isn't relevant for
*[asciidoc] to generate the documentation for the `:help`
command, when using the git repository (rather than a release).

See link:doc/install.asciidoc[the documentation] for directions on how to
install qutebrowser and its dependencies.


**qutebrowser's primary maintainer, The-Compiler, is currently working
part-time on qutebrowser, funded by donations.** To sustain this for a long
time, your help is needed! See the[GitHub Sponsors page] for more
information. Depending on your sign-up date and how long you keep a certain
level, you can get qutebrowser t-shirts, stickers and more!

GitHub Sponsors allows for one-time donations (using the buttons next to "Select a
tier") as well as custom amounts. **For currencies other than Euro or Swiss Francs, this
is the preferred donation method.** GitHub uses[Stripe] to accept
payment via credit carts without any fees. Billing via PayPal is available as well, with
less fees than a direct PayPal transaction.

Alternatively, the following donation methods are available -- note that
eligibility for swag (shirts/stickers/etc.) is handled on a case-by-case basis
for those, please[get in touch] for details.

* SEPA bank transfer inside Europe (**no fees**):
- Account holder: Florian Bruhin
- Country: Switzerland
- IBAN (EUR): CH13 0900 0000 9160 4094 6
- IBAN (other): CH80 0900 0000 8711 8587 3
- Bank: PostFinance AG, Mingerstrasse 20, 3030 Bern, Switzerland (BIC: POFICHBEXXX)
- If you need any other information: Contact me at
* PayPal:[CHF],[EUR],[USD].
**Note: Fees can be very high (around 5-40%, depending on the donated amounts)** - consider
using GitHub Sponsors (accepts credit cards or PayPal!) or SEPA bank transfers
* Cryptocurrencies:
- Bitcoin: link:bitcoin:bc1q3ptyw8hxrcfz6ucfgmglphfvhqpy8xr6k25p00[bc1q3ptyw8hxrcfz6ucfgmglphfvhqpy8xr6k25p00]
- Bitcoin Cash: link:bitcoincash:1BnxUbnJ5MrEPeh5nuUMx83tbiRAvqJV3N[1BnxUbnJ5MrEPeh5nuUMx83tbiRAvqJV3N]
- Ethereum: link:ethereum:0x10c2425856F7a8799EBCaac4943026803b1089c6[0x10c2425856F7a8799EBCaac4943026803b1089c6]
- Litecoin: link:litecoin:MDt3YQciuCh6QyFmr8TiWNxB94PVzbnPm2[MDt3YQciuCh6QyFmr8TiWNxB94PVzbnPm2]
- Others: Please[get in touch], I'd happily set up anything link:[supported by Ledger Live]


Thanks a lot to[MacStadium] for supporting
qutebrowser with a free hosted Mac Mini via their[Open Source Project].

(They don't require including this here - I've just been very happy with their
offer, and without them, no macOS releases or tests would exist)

Thanks to the[HSR Hochschule für Technik Rapperswil], which
made it possible to work on qutebrowser extensions as a student research project.

image:doc/img/sponsors/macstadium.png["powered by MacStadium",width=200,link=""]
image:doc/img/sponsors/hsr.png["HSR Hochschule für Technik Rapperswil",link=""]


qutebrowser's primary author is Florian Bruhin (The Compiler), but qutebrowser
wouldn't be what it is without the help of[hundreds of contributors]!

Additionally, the following people have contributed graphics:

* Jad/link:[yelo] (new icon)
* WOFall (original icon)
* regines (key binding cheatsheet)

Also, thanks to everyone who contributed to one of qutebrowser's
link:doc/backers.asciidoc[crowdfunding campaigns]!

Similar projects

Various projects with a similar goal like qutebrowser exist.
Many of them were inspirations for qutebrowser in some way, thanks for that!


*[vimb] (C, GTK+ with WebKit2)
*[luakit] (C/Lua, GTK+ with WebKit2)
*[Nyxt browser] (formerly "Next browser", Lisp, Emacs-like but also offers Vim bindings, QtWebEngine or GTK+/WebKit2 - note there was a[critical remote code execution in 2019] which was handled quite badly)
*[Vieb] (JavaScript, Electron)
*[surf] (C, GTK+ with WebKit1/WebKit2)
* Chrome/Chromium addons:[Vimium]
* Firefox addons (based on WebExtensions):[Tridactyl],[Vimium-FF]
* Addons for Firefox and Chrome:[Surfingkeys],[Link Hints] (hinting only)
* Addons for Safari:[Vimari]


*[dwb] (C, GTK+ with WebKit1,[unmaintained] -
main inspiration for qutebrowser)
*[webmacs] (Python, Emacs-like with
*[vimprobable] (C, GTK+ with
*[jumanji] (C, GTK+ with WebKit1)
*[conkeror] (Javascript, Emacs-like, XULRunner/Gecko)
*[uzbl] (C, GTK+ with WebKit1/WebKit2)
*[xombrero] (C, GTK+ with WebKit1)
*[Cream Browser] (C, GTK+ with WebKit1)
*[wyeb] (C, GTK+ with WebKit2)
* Firefox addons (not based on WebExtensions or no recent activity):[Vimperator],[Pentadactyl],[VimFx] (seems to offer a[hack] to run on modern Firefox releases),[QuantumVim],[Vim Vixen] (ESR only),[VVimpulation],[Krabby]
* Chrome/Chromium addons:[ViChrome],[Vrome],[Saka Key] ([unmaintained]),[cVim],[vb4c] (fork of cVim,[unmaintained]),[GleeBox]


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
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 <>.


qutebrowser optionally uses[pdf.js] to
display PDF files in the browser. Windows releases come with a bundled pdf.js.

pdf.js is distributed under the terms of the Apache License. You can
find a copy of the license in `qutebrowser/3rdparty/pdfjs/LICENSE` (in the
Windows release or after running `scripts/dev/`), or online[here].

Project details

Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qutebrowser-2.5.4.tar.gz (6.1 MB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page