That’s good about the popovers; they were pretty broken for me. And yes, I knew I could add the jQuery require but since Open Framework specifically has a jQuery module for this, I figured that’s the approach to take (also less code that’s injected, these requires aren’t free).
@LupoMikti Adding a // @grant GM_addStyle in TamperMonkey makes Chrome load the Dashboard Progress Plus script before the Open Framework for me, so I get a popup telling me to install it first.
The CSS of the popovers is only slightly broken in my version, but I have no idea why the ones for items on the left look normal and the ones on the right are transparent and move the elements to the side.
I compared the CSS properties of the correct ones and the bad ones and can’t see any difference.

Nevermind, was able to fix it by adding a few CSS properties from the original bootstrap.css.
Here’s my patched version: Dashboard Progress Plus Patch - Pastebin.com
So this isn’t what actually is happening. When you grant the GM functions, then the script is sandboxed by the script manager and it no longer has fully shared access with the window of the webpage the script is being applied to. Instead, it uses Tampermonkey’s window which is then merged in some way with the actual window at runtime. One way to fix it is to replace instances of window.wkof with just wkof. I mention this in my comment with the explanations, just not in detail as someone more familiar with writing scripts likely knows the information already.
I also mentioned adding the provided popover css without GM_addStyle as a possibility because the script itself already adds css without it (one could just add in the popover css to that section as well) which would fit better with your approach and not run into the sandboxing issue. However, since @requires aren’t free (they literally paste the contents into the injected script at runtime, so too many of them can affect performance and debugging), methods that do not go that route are preferred by me, but ultimately it is up to rfindley which approach to do.
One more broken thing: Seems like FontAwesome was removed from the website, so the locked icon in the custom CSS (\f023) is now just a rectangle.
An alternative would be to use the
emoji instead, but that looks out of place.
Wanikani itself has switched to SVG icons and this is the approach recommended by them for authors of scripts as well, specifically to “bring your own icons”. To that end, Hubbit made a library script that can be used by other scripts called Wanikani Custom Icons to more easily facilitate the transition. If one of the icons provided by the library is not there it also allows you to define your own icon(s) for use. For a single icon like this though that may be overkill, so we can just use the SVG ourselves.
Free SVG icons can be had not just from FA. Hubbit pointed me in the direction of FlatIcon for example. Here’s a link to a search for “lock” on their site.
Here’s the SVG markup of one I like from that page:
<!-- UIcons by Flaticon - https://www.flaticon.com/uicons -->
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M19,8V7A7,7,0,0,0,5,7V8H2V21a3,3,0,0,0,3,3H19a3,3,0,0,0,3-3V8ZM13,18H11V14h2ZM17,8H7V7A5,5,0,0,1,17,7Z"/>
</svg>
I’ll spend a little time tomorrow testing this icon to make sure everything looks good.
Edit: I confirmed that using an SVG in the css content property works fine. I edited my comment with all the other edits with this fix.
Wanted to follow up on this, know it’s been asked before but is there an easy way to copy the code into the scripts? I really like this script so it’s unfortunate it’s not been working for a while. (Have some frontend experience so if you have some pointers would be great)
You can try @reconman’s pastebin link above. If you’d rather specifically the approaches I take then I’ll see about doing similar while removing my personal edits (or maybe people are interested in those edits? idk)
Just a brief heads up:
The script stopped working today for me. Is it just me, or did anyone else notice that?
Edit:
There just seems to be a conflict with the “WaniKani Fast Abridged Wrong/Multiple Answer” userscript. And that is meant to retire anyway… unfortunately. ![]()
Yeah it stopped working. Sadly I cannot acces the pastebin link from @reconman anymore. I added the 2 “requires” they mentioned but I don’t know how to fix the css part and now have only these overlapping boxes ![]()
I have a working copy of this script. Here is the procedure to get it.
- Disable your current copy of Dashboard Progress Plus in Tampermonkey or whatever script manager you use.
- Down load the new copy from here
@rfindley, if you wish you can upgrade your official greasyfork copy with this one.
Edit: I fixed a bug when turbo:load event is fired during startup.
more than any other script, this is the one i hope can be updated to the new dashboard
![]()
Hi guys and in particular @straille
I installed this script to be able to get some features from the old Dashboard back, like seeing when a certain card is due.
I feel like an idiot, but I still cannot get this information to show up, see below.
I was trying to hover over the items here but nothing shows up.
I tried looking at the script’s settings in the Wanikani user menu, but it doesn’t help.
Am I using the wrong widget? (I mean the modern widgets provided by Wanikani since Wanikani changed the dashboard layout)
* Also, I’m not really seeing any meaningful changes to the dashboard as compared without having the extension. It seems to be correctly enabled, however, because it lets me look at and change the script settings. Maybe I’m missing out on some kind of beginner guide for this? The original post in Dashboard Progress (not Plus, the original one) has some screenshots but they are likely outdated.
What I’m most curious about is what this extension can do with the new ‘‘controversial’’ Dashboard, and that’s quite a recent change (2025 I think). That’s also why I’m tagging @straille because he/she referred me to this user script to solve my problem (I don’t mean that in an entitled way, I’m just genuinely curious about getting this to work)
This script is discontinued by the author. I have taken over the script. You should try this version:
i don’t know when this was, but i’m so sorry if i’ve recommended a script without making sure i was linking the correct version ![]()
