3 Web Browsers Which Take Power Users To The Extreme
You have probably used the usual ones like Chrome and Firefox. maybe, even more, feature-rich ones like Vivaldi, Opera, Brave, etc. But the ones I’m gonna talk about are no way near to them.
The web browsers mentioned below are made for people who need complete customization left to them. You could even have a config file and program everything yourself to alter the stuff you don’t like. And yes… You can customize literally anything in this.
How All Of The Below Works?
Most web browsers mentioned below are available on Windows, Linux, and Mac. They use something called a config file to configure any part of the browser, from themes to colors, to icons, to features and search engines, and so on… Anything could be configured. You might find this familiar if you’re using a window manager in Linux.
So basically you have the whole web browser customization in one file, so you can easily store as a backup or transfer it through multiple systems.
Each one of them uses a different syntax to edit the browser. It could be Python, Lua, JS, or just a normal simple config file. Ok, I’m not gonna waste more time… Let’s get right in.
Vimb: Custom Language(Windows, Mac & Linux)
Vimb is a fast and lightweight vim-like web browser based on the WebKit web browser engine and the GTK toolkit. Vimb is modal like the great vim editor and also easily configurable during runtime. Vimb is mostly keyboard-driven and does not distract you from your daily work.
- it’s modal like Vim
- Vim like keybindings — assignable for each browser mode
- nearly every configuration can be changed at runtime with Vim like set syntax
- history for
excommands, search queries, URLs
- completions for: commands, URLs, bookmarked URLs, variable names of settings, search-queries
- hinting — marks links, form fields, and other clickable elements to be clicked, opened, or inspected
- SSL validation against ca-certificate file
- user-defined URL shortcuts with placeholders
- read it later queue to collect URIs for later use
- multiple yank/paste registers
- Vim like autocmd — execute commands automatically after an event on specific URIs
since it’s open-source, it could be used in any system.
Github source —
git clone git://github.com/fanglingsu/vimb.git
QuteBrowser: Python(Windows, Mac & Linux) [Also my personal Favorite]
qutebrowser is a keyboard-focused browser with a minimal GUI. It’s based on Python and Qt and free software, licensed under the GPL.
It was inspired by other browsers/addons like dwb and Vimperator/Pentadactyl.
This is probably the most feature-rich out of the above, with features like AdBlock, auto-open, and theming customizations BUILTIN. You can have all of this in the other 2 browsers as well, but it’s not built-in.
The following software and libraries are required to run qutebrowser:
- 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)
- 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 the transmission of sensitive data.
On older Python versions (3.7/3.8), the following backports are also required:
The following libraries are optional:
- AdBlock (for improved adblocking using ABP syntax)
- pygments for syntax highlighting
:view-sourceon QtWebKit, or when using
:view-source --pygmentswith the (default) QtWebEngine backend.
- On Windows, colorama for colored log output.
- importlib_metadata on Python 3.7, to improve QtWebEngine version detection when PyQtWebEngine is installed via pip (thus, this dependency usually isn’t relevant for packagers).
- asciidoc to generate the documentation for the
:helpcommand, when using the git repository (rather than a release).
See the documentation for directions on how to install qutebrowser and its dependencies.
LuaKit: Lua(Half Door, Half Bitten Apple, and Full Penguin)
Luakit is a highly configurable browser framework based on the WebKit web just does content engine and the GTK+ toolkit. It is very fast, extensible with Lua, and licensed under the GNU GPLv3 license. It is primarily targeted at power users, developers, and anyone who wants to have fine-grained control over their web browser’s behavior and interface.
This browser is very lightweight with only 9000 of code it is too easy and quick to install. The config file used here is in Lua. The tabs, font, and overall design are very simple, and also expect you to configure it how you want.
What more? You don’t need a Lua compiler for this. The browser understands the syntax anyways.
Chrome-like browsers are probably the browsers for most people. It just does the work for most people. BUT, for some of us who have OCD(just kidding), to be exactly how you want, you probably want to go with some of the above. All of them are awesome, although I prefer to go with something like qutebrowser since it is a perfect balance between too many bugs and too less features.
I’ll make more videos on this and more with some memes as well on my YouTube channel. I’ll also post some smaller content on Twitter. With that said, I hope you guys enjoyed and got something from this. I’ll catch you in the next article.
You’re Awesome :)