/qutebrowser

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

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

qutebrowser

qutebrowser logo A keyboard-driven, vim-like browser based on PyQt5 and Qt.

Build Status AppVeyor build status coverage badge

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!

Screenshots

screenshot 1 screenshot 2 screenshot 3 screenshot 4

Downloads

See the github releases page for available downloads and the INSTALL file for detailed instructions on how to get qutebrowser running on various platforms.

Documentation

In addition to the topics mentioned in this README, the following documents are available:

Getting help

You can get help in the IRC channel #qutebrowser on Freenode (webchat), or by writing a message to the mailinglist at qutebrowser@lists.qutebrowser.org.

There’s also an announce-only mailinglist at qutebrowser-announce@lists.qutebrowser.org (the announcements also get sent to the general qutebrowser@ list).

If you’re a reddit user, there’s a /r/qutebrowser subreddit there.

Contributions / Bugs

You want to contribute to qutebrowser? Awesome! Please read the contribution guidelines for details and useful hints.

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

For security bugs, please contact me directly at mail@qutebrowser.org, GPG ID 0x916eb0c8fd55a072.

Requirements

The following software and libraries are required to run qutebrowser:

  • Python 3.5.2 or newer (3.6 - 3.8 recommended; support for 3.5 will be dropped with qutebrowser v2.0.0)

  • Qt 5.7.1 or newer (5.14 recommended; support for < 5.11 will be dropped with qutebrowser v2.0.0) with the following modules:

    • QtCore / qtbase

    • QtQuick (part of qtbase in some distributions)

    • QtSQL (part of qtbase in some distributions)

    • QtOpenGL

    • QtWebEngine, or

    • alternatively QtWebKit - only the updated fork (5.212) is supported. Note: The latest QtWebKit release is based on 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.7.0 or newer (5.14 recommended, support for < 5.11 will be dropped soon) for Python 3

  • pkg_resources/setuptools

  • pyPEG2

  • jinja2

  • pygments

  • PyYAML

  • attrs

The following libraries are optional:

  • cssutils (for an improved :download --mhtml with QtWebKit).

  • On Windows, colorama for colored log output.

  • asciidoc to generate the documentation for the :help command, when using the git repository (rather than a release).

See the documentation for directions on how to install qutebrowser and its dependencies.

Donating

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!

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 fee):

    • 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 mail@qutebrowser.org.

  • PayPal: CHF, EUR, USD

  • Cryptocurrencies:

    • Bitcoin: bc1q3ptyw8hxrcfz6ucfgmglphfvhqpy8xr6k25p00

    • Bitcoin Cash: 1BnxUbnJ5MrEPeh5nuUMx83tbiRAvqJV3N

    • Ethereum: 0x10c2425856F7a8799EBCaac4943026803b1089c6

    • Litecoin: MDt3YQciuCh6QyFmr8TiWNxB94PVzbnPm2

    • Others: Please get in touch, I’d happily set up anything supported by Ledger Live

Sponsors

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.

powered by MacStadium HSR Hochschule für Technik Rapperswil

Authors

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/yelo (new icon)

  • WOFall (original icon)

  • regines (key binding cheatsheet)

Also, thanks to everyone who contributed to one of qutebrowser’s crowdfunding campaigns!

Similar projects

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

Active

Inactive

License

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/gpl-3.0.txt.

pdf.js

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/update_3rdparty.py), or online here.