Hakubun - Cross-Platform App for Wanikani - Android and iOS Beta

Hey all! I’m creating this post because I’ve been working on a third-party WaniKani app. I’m a full-time software engineer with a lot on my plate, and this is a side project of mine I work on whenever I have free time.

This is a space for questions, feedback, and requests about the upcoming app.

Disclaimer: I’m generally good about replying, but I’m also a queer autistic person that’s prone to burnout/feeling overwhelmed, so please take that into account :stuck_out_tongue:

TLDR

Android beta version is available now! You can get it here:

iOS beta available to test here: Join the Hakubun beta - TestFlight - Apple

No concrete date for non-beta Android and iOS and releases yet (when I feel like it’s a reliable and fully-featured app)

Feature Requests or Bug Reports
You can submit these in Hakubun by clicking the “Submit Feedback” button at the bottom of the Settings page, or by directly opening an issue in the Hakubun code repo. Submitting feedback through the app creates a GitHub issue too, with the benefit of staying anonymous if you choose. Downside of in-app is that you can’t attach screenshots this way and I have no way to directly contact you for more info, so please give thorough explanations :slight_smile:

What is the app?
Hakubun (博聞 or はくぶん, meaning well-informed or erudite) is meant to be used in the same way Tsurukame, Flaming/Smouldering Durtles, or Jakeipuu (RIP :cry:) are used.
This means you’ll be able to do the following:

  • Lessons
    • By subject type selection
    • By subject selection (e.g. want to study specific kanji)
    • Normal vanilla selection
    • By current level
  • Reviews
    • By subject type selection
    • By subject selection
    • Normal vanilla selection
    • By current level
    • Back to back (reading then meaning, meaning then reading, or just shuffled)
  • Search (for radicals, kanji, vocab, kana vocab)
  • User settings
    • Defaults for audio, sort order, batch size, and more
    • Light theme or dark theme

What does it look like?
Some of the design is inspired from the Jakeipuu app, but the code is all my own (as much as anyone can really own code lol) and I by no means want to replicate that app exactly.

Home Screen

Reviews

Lessons

Subjects

Subject Details (seen in reviews, lessons, clicking on a subject)

Search

User Settings

FAQ

Can I use it with a screen reader or keyboard?
Accessibility is a big focus of mine, and I’ve spent a lot of time making sure things are screen-reader/keyboard compatible by using WAI-ARIA compliant tools wherever I can. I’m not an accessibility engineer though and don’t use a screen-reader myself (keyboard user sometimes), so please message me and let me know if you run into any issues. I’ll be testing everything out with a screen-reader and keyboard before release.

What platforms is it on?
This is a cross platform app. It’s the worst when an app you love is only on Android/iOS and you don’t use that platform. I’ve been prioritizing the release of mobile apps first, so initially the following versions will be released:

  • iOS
  • Android

These versions are technically available, but comes with a disclaimer as they need improvements to account for larger screen sizes:

  • iPad, Mac
  • Android tablets

After spending some time making sure the app is nice and useable for larger screens, I’ll be releasing these versions:

  • Web (mobile, desktop)

Only one codebase is used for creating this app, and I’m using some software that essentially converts it to the other platforms.

The Code
You can find the repo here. I’m working on adding info for how people can contribute. I’ve had a few contributions already :tada:

Wanna support me/the project?
This app is completely free and I don’t make any money off it. I enjoy working on it so I don’t mind that fact :blush: But it actually costs me money to develop/maintain the app due to the $99/year iOS developer account. If you’re interested in and able to offset those costs a bit, you can here:

I’m sure I’ll edit this post plenty with updates and more details… but for that’s all I have in my brain for now lol

49 Likes

Are you planing on adding the phonetic/ semantic script? That is the only thing i miss from smoldering durtles.

7 Likes
  • Web (mobile, desktop)

Woah, so its an actual replacement for the main site too? Siiick.

7 Likes

It would be nice if Kanji and vocabularies (like WICS or WaniPlus) can be integrated.

Third party desktop apps have been pretty rare. Maybe Jakeipuu has been there for Windows, but it’s not working anymore.

I might eventually need a separate SRS deck for remembering additional Kanji readings and unusual readings in vocabularies, anyway.

2 Likes

Good choice! :grin:

3 Likes

Very cool. Thanks for working on this.

2 Likes

Actually not sure what this script is… I’ll look into it!

3 Likes

I never thought of it that way, but I guess so lol

1 Like

Unfortunately this would be a lot of extra work and not in scope for what I’m working on. But I appreciate the suggestion! To be clear, there won’t be Windows/Mac apps, just web apps that can be used on Windows and Mac :slight_smile:

3 Likes

If you’re making an iOS app this can normally run on M1 Mac without any effort from the developer (other than clicking a checkbox when compiling). Of course the layout won’t be optimised for a large screen but I find that it’s generally good enough and an excellent alternative for when the phone is not around.

3 Likes

The app looks awesome so far!

Maybe adding vocabulary progress bars would be helpful. Radical and kanji progress is currently visible on the dashboard, but without vocab progress bars, it is difficult to understand how much vocab is left in the current and previous levels. I use the WaniKani Dashboard Level Progress Detail 1.0+ script for this.

2 Likes

That’s a great idea! :slight_smile: I’ll probably add this to the home screen towards the bottom. I’m thinking of eventually adding a stats tab too that would be similar to the info seen on wkstats

2 Likes

A stats tab would be awesome!

Additionally, breaking down the SRS stages by sub-stage (i.e. Apprentice: I / II / III / IV) & type (radicals/kanji/vocab) might be easy to implement. However, if it crowds the dashboard or stats page too much, don’t worry about it.

1 Like

Oh I actually already have the num subjects grouped by SRS stage added at the bottom of the home page, just forgot to screenshot it :stuck_out_tongue: I’ll update the screenshots this weekend since some are outdated. I really like the review forecast view Jakeipuu has, so one of my next tasks is to add something similar to that :blush:

4 Likes

This is great! I miss Jakeipuu a lot. Smoldering is pretty good too, but I preferred the snappiness and UI of JI.
Hakubun looks like the best of both worlds so I am excited!

3 Likes

Would you be able to add an option to review burned items? I’m still working on burning the last few items but I’d love to just be able to drill on burned items. (Like the “Extra Study” on the site.)

Good luck on this project! Do you plan to open-source it after your release? I would hate to see this go the same way as Jakeipuu.

1 Like

I can add that, yeah! Will take a bit of extra work though so won’t be in the first release

Oh yeah, I mentioned that towards the end of the post :stuck_out_tongue:

One of my main focuses (in using the app and contributing to it) has been accessibility, so I’ve avoided more niche programming languages and opted for TypeScript with React. Both are well-known and have lots of free resources out there to learn them :blush: I’ll likely edit this post in the future with more details on the development process for whoever’s interested

5 Likes

Awesome! Would the number on the WaniKani homepage decrease?