I've been using Tridactyl[1] for a long time now for keyboard-driven vi bindings in the browser and yesterday decided to check out the alternatives, thinking maybe they provided some interesting features too.
I looked them all up: Vimium, Vimium C, Vimmatic, SurfingKeys and the result is: I am in awe of how advanced Tridactyl is in comparison to all of them.
Native messaging*, comprehensive ex command mode for commands and settings with live-previewed completions; hint-based visual selection, copying and focus; support for local filesystem text-based configuration; binding sequential browser actions to custom commands; tab group commands; actually launching (neo)vim to edit text areas; ...to name a few!
[1] https://tridactyl.xyz/
* do bear in mind the security implications of native messaging, as noted by the developers themselves, but you can have most of the functionality without it