Feature Request: Adaptative color theme based on current web page background colors
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 27k
- Forks
- 2.6k
- PR merge metrics
- No merged PRs in 30d
Description
As a formal Vim user, I love Vimium and I use it everyday. I know that there is some current work with a dark theme, and I think it could be a plus make the Vimium theme alter based on the page tab that it's currently showing off.
I've been thinking that it could be possible make Vimium listen the computed background color of a web page using the vanilla Javascript getComputedStyle() function, and then apply those colors to it's own color palette, by just creating a little more contrast (for example, making the color 10% darker or lighter).
I've been working myself on a very simple dark css stylesheet, but I realized it looks odd if the dark tone of the web page is too different.
This could also be specially great for people who also use Dark Reader, since the extension allows multiple shades of dark and Chrome can catch all the different applied tones. Or better, having Vimium show a light theme in a tab with a light background and a dark theme in another tab with the opposite.
Here are some examples of what I mean:

Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the linked dark-theme work in PR #3402 and the issue's proposed use of vanilla JavaScript getComputedStyle(). Compare the existing dark CSS stylesheet with the supplied examples, then define how page background colors should select or alter Vimium's palette and how completion would be verified across light and dark tabs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100