This unofficial app for WaniKani improves the experience of doing WaniKani lessons and reviews while on iOS devices. Please note that a WaniKani account is required to use this app.
Features:
- Do reviews and lessons with an in-app web browser, with support for community-produced user scripts. (All user scripts are disabled by default and must be enabled in the app settings.)
- Close But No Cigar: https://community.wanikani.com/t/userscript-prevent-your-answer-was-a-bit-off-answers-from-being-accepted-a-k-a-close-but-no-cigar/7134
- Jitai: https://community.wanikani.com/t/jitai-the-font-randomizer-that-fits/12617
- WaniKani Improve: https://community.wanikani.com/t/wanikani-improve-2-2-2-faster-and-smarter-reviews/2858
- WaniKani Override (also known as the "ignore answer" script): https://community.wanikani.com/t/userscript-wanikani-override-ignore-answer-button-active-support/17999
- Receive notifications when reviews are due
- Lists upcoming reviews in the review timeline
- Progress for current-level radicals and kanji, including time until next review and quickest time to Guru
- Notification Centre widget
Since the project uses an app extension with a shared App Group, you'll have to create a new App Group and App ID using the Apple Developer Portal, then change the app bundle identifiers in the main target and app extension to match. A fastlane lane has been be prepared to take care of all that for you. Here's what you need to do:
- Have a registered Apple Developer Account.
- Install fastlane
- Clone / download the project
- Edit "fastlane/Appfile" and set your own bundle identifier, plus set your Apple ID and Team ID
- Run
fastlane setupID
using the command line - Change the groupIdentifier variable in initialiser of AppGroupDatabaseConnectionFactory in WaniKaniKit/Database/DatabaseConnectionFactory.swift
- Select your signing identity for the
AlliCrab
andWaniKaniStudyQueueWidget
targets. - You should now be able to run the project on your device!
You can use fastlane resetID
to reset the bundle identifiers to the default values again, which may be useful if you want to submit pull requests without your custom bundle identifiers.
You can run git update-index --assume-unchanged fastlane/Appfile
if you want to keep changes of Appfile locally without having to push them. (Use git update-index --no-assume-unchanged fastlane/Appfile
to undo this.)