What's it about?
This script allows to skip any type of quiz question (configurable) on WaniKani (lesson, review, extra study, recent mistakes) by answering it automatically correctly thereby allowing to learn Kanji with WaniKani exactly how one prefers
API Key
For the script to work you need to enter your WaniKani API key at the top of the script to the existing variable:
const WANIKANI_API_KEY = '';
Anyone with a WaniKani account can generate these by going to Settings > API Tokens > Generate a new token > Enter any token description > Don't check any boxes > Generate token. Then, just copy the resulting token into the variable like:
const WANIKANI_API_KEY = '14384424-7716-43d8-a93a-522b816007d9';
Modes
The script adds a button next to the home button on quiz pages that allows switching between two modes: automatic and manual. You can switch between the two at any time by clicking on the button. The Button will show M if manual mode is active and A is automatic mode is active:

Note: The mode will be remembered in the same browser until the browser cache is emptied.
Automatic Mode
In automatic mode, all questions configured to be skipped (see
Options) will be skipped automatically without any user interaction.
Note: Automatic skipping will happen fast so configure wisely which elements to skip!
Manual Mode
In manual mode, a button is added to the user input field:

If clicked, this button skips the current question by answering it correctly.
Options
At the top of the script, you can customize the behaviour as follows:
Variable |
Type |
Explanation |
WANIKANI_API_KEY |
string |
API key necessary to request information about quizzes from WaniKani |
AUTOMATIC_MODE |
bool |
Determines in which mode to start first time (auto skip or manual skip). After that, last mode is always remembered in same browser until browser cache is emptied |
SKIP_RADICAL_MEANING |
bool |
Determines if radical meaning quizzes should be skipped in automatic mode |
SKIP_KANJI_MEANING |
bool |
Determines if kanji meaning quizzes should be skipped in automatic mode |
SKIP_KANJI_READING |
bool |
Determines if kanji reading quizzes should be skipped in automatic mode |
SKIP_VOCABULARY_MEANING |
bool |
Determines if vocabulary meaning quizzes should be skipped in automatic mode |
SKIP_VOCABULARY_READING |
bool |
Determines if vocabulary reading quizzes should be skipped in automatic mode |
SKIP_KANA_VOCABULARY_MEANING |
bool |
Determines if kana vocabulary quizzes should be skipped in automatic mode |
KEEP_INPUT_FIELD_FOCUSED |
bool |
Determines if the field where user enters the solution will keep the cursor active after skipping |
Note: Sadly, markdown tables seem to not render properly on greasyfork so sorry for the readability!