UserScript is essentially fixing things that should have been fixed, or just some QoL improvement with opinions. Popular website can still have a lot of unseemly things - people just compensate tolerating bugs, to get what they wanted, or to go along with what is popular.
It can be started with just knowing Inspect Element / DevTools Console and installed Tampermonkey; and try to fix / extend / or create a new one inside Tampermonkey’s editor. debugger;
may also be helpful at the start.
It may help to understand API and WaniKani Open Framework. jQuery Storage
is utilized in WaniKani (as well as jQuery
pre-installed), so it might be helpful to know as well. If // @require
is used, you might need to look at the source at well. Also, there are UserScript-specific JavaScript, like GM_*
.
I also have a way of making more complex scripts, or using NPM libraries. But I haven’t gone as far as integrating a backend / shared database yet.
Also, WaniKani and WaniKani Community (which is Discourse and has window.require()
) aren’t the only places I make a UserScript for.
Personally, I started from using Python to parse text and Kanji; and adapt to JavaScript and CSS. (I have a year of C programming in high school long before that, though.)
Nonetheless, UserScript is not the only way, but it is a good way to support Chrome-Firefox-Safari at the same time. Depending on your requirements and your mileage, you might also consider making a Chrome Extension (or Firefox).