BadWolfDoctor Who (2005), Season 1, Episode 13:
Rose: I am the Bad Wolf, I create myself. I take the words… I scatter them in time and space. A message to lead myself here.Doctor: Rose, you've got to stop this! You've go to stop this now! You got the entire vortex running through your head. You're gonna burn!
Rose: I want you safe. My Doctor. Protected from the false god
Dalek Emperor: You cannot hurt me! I am immortal!
Rose: You are tiny. I can see the whole of time and space. Every single atom of your existence and I divide them. Everything must come to dust. All things. Everything dies. The Time War ends.
Dalek Emperor: I will not die! I cannot die!
BadWolf is a minimalist and privacy-oriented WebKitGTK+ browser.
- Small codebase (~1 500 LoC), reuses existing components when available or makes it available
- WebKitGTK native extensions, Interface customizable through CSS
- Powerful & Usable
- Stable User-Interface; The common shortcuts are available (and documented), no vi-modal edition or single-key shortcuts are used
- No annoyances
BadWolf is using Semantic Versioning with considering that the User-Interface is part of the interface stabilisation. Release branches (ie.
1.0.x) are supported for 6 months for any bug fixes and 2 years for security fixes.
Tested and supported platforms
- */Linux, NetBSD, OpenBSD, FreeBSD
- CPU Architectures
- x86_64/amd64, armv7hf
- Wayland, X11
Similar systems should work, feel free to reports tests/bugs and volunteer on testing before releases are published.
Libre Systems where WebKitGTK is up-to-date (2.28.0+) are the target, proprietary systems are unsupported.
Tickets (bug, feature request, …)
You can reach me directly or write a ticket on the Gitlab repository.
For security issues, sending me an email to email@example.com with my reop public key (reop homepage) is the preferred way.
Please try to reach me before doing so, it seriously helps on integrating your contribution and could also point you at resources if you need help. Feel free to drop me a repository or patches of your local modifications though.
po files are used for translations, this is supported by most translation helpers but a simple text editor is fine as there isn't much to translate. Please do not submit machine-only translations, it would already be done otherwise.
The git repositories are using GitFlow with commits that are clean with descriptive messages. I'll probably ask you to rewrite your commits or rewrite them if they aren't.
- You can use /git/badwolf.git and send me an email (
git send-emailis accepted, here is a tutorial) at
- You can use the gitlab repository (note: will get cleanly migrated to something else at some point)
- You can also use other means, like an actual pull request(sending a link to a repository and a branch) or link to patches
Theses are the browsers where I drew inspiration or some hints from their code from:
- lariza: Minimalist WebKitGTK browser, reuses
tabbed(and so is X11-bound), vi modal edition
- Epiphany (aka Gnome Web): GNOME-weight WebKitGTK browser, haven’t used it but looked at the code for hints
- Mozilla is Broken
- www-client are broken (which can serve as a loose roadmap)
- 2020-04-17: BadWolf, one year later
- Mozilla - Devil Incarnate