Android app WaniKanji

Hello folks,

A week ago, I posted about a new app I was working on ([New App] Android WaniKani Progress app). The interface was crap in my opinion, and so I started over and made it look, I think, much better. See screenshots below. See below the screenshots for a detailed explanation of what the app does. I hope this is useful to you. The app is called WaniKanji. Link at the bottom.

1st screen:

Leads to:

Nav bar:

My Items click:

Nav bar All WaniKani Items click:

Nav bar By Rank, then Master click:

Nav bar By SRS, then SRS 6 click:

Nav bar By Level, then 19 click:

Search results:

Nav bar Leeches, then By Leech Score (>=2) click:

Wallpaper generator output (ordered and randomized) - click on images, they are blurred because of this forum’s compression:

Important notes:

  • I have tried to make this app look sleek, but the backend is horribly written. I got this done in less than ten days and is my first android app.
  • The search function is either local to what is currently on the screen, or global (all WK items). To know which is used where, bear this in mind:
  1. Clicking on the search icon in the top right will show you a hint letting you know what search you will be performing.
  2. Clicking on an item in a list of items does a global search.
  3. I’m quite happy with the search function because clicking on a Vocab item shows you the kanji that make it up and well as Vocab that contains those Kanji. You can keep clicking within search results to search further. A consequence of this however, is that clicking on a vocab with hiragana will return results that contain each of the hiragana results to. So clicking on a -ru verb will return all -ru verbs. I am currently unsure if I should look at this as a feature or a bug :confused:
  • About forty items in all do not have a graphic showing the character. This has to do with how WK handles radicals it has invented as opposed to the traditional ones. I could put in some time to figure out why my attempt at a fix is not working, but since API 2.0 has been announced for the end of this year and should drastically improve on this, I think we can live without the images of forty radicals.
  • Numbers on items in a list show the item’s level, and the color of the number shows the rank (apprentice, guru…).
  • I have not given the app an icon yet, I am looking forward to your input.
  • On the main screen, clicking on Level Progress will show you a progress bar for each item in the current level, which reflects the progress to Guru.

I really hope you enjoy using this (let’s first hope it works for you :sweat_smile:).
Whether you hate it, like, love it, please let me know, and feel free to suggest improvements. But, to be honest, until the next API releases in a few months, I fear I might be slow with new features.

Currently this is on my TO-DO list:

  1. Review Queue (Difficulty: 2/5)
  2. Reviews (Difficulty: 3/5) - I attempted this and oh lordy. I have no idea why the keyboard spazzes out even when I specifically order it not to. I have code sitting waiting to be plugged in when I figure out the keyboard. DONE
  3. Missing radicals images (Difficulty: 1/5) - As I mentioned, this will come with API 2.0 hopefully.
  4. Identifying leeches (Difficulty: 1/5). If there is enough demand, I might snap to this sooner. DONE.

I will not put it on the store until I’ve had enough feedback telling me it works well enough. I will also not be charging for this app. This community has been such an amazing place to meet awesome people and I cannot bring myself to even consider putting a price tag on this. So thank you to all of you for brightening my day, every day.

WaniKanji Download



P.S. I am willing to put the code up on GitHub or something, but bear in mind that the codebase is atrocious. This is what you get when you code as you learn, hack as you code, and make non-serializable ArrayLists :wink:. Oh and this is also what you get when you speed code.

UPDATE 07/27/17: Bug in previous version required API Key to be input at every app launch. Fix issued in this version.

UPDATE 07/27/17: You can now do reviews straight from the app, within an in-app-browser.

UPDATE 07/27/17: Leeches are now in the app. See updated screenshots :).

UPDATE 07/28/17: Progress bar percentages added.

UPDATE 08/03/17: On search results pages, searching for the item which resulted in the current results does nothing now.

UPDATE 08/04/17: Wallpaper generator included. Wallpapers get saved in Root->WaniKanji.

UPDATE 08/17/17: Clicking on your profile picture will refresh the Dashboard.

UPDATE 08/17/17: Character for group your level is in added next to level number (Pleasant, Painful… - see screenshot).

UPDATE 08/17/17: Duplicates in search results removed.


@jprspereira, the link is in the post above, I know you asked for it in my previous post :stuck_out_tongue:
@rfindley, I know you’re done, but if you ever have the time, I would love your feedback. Feel free to roast me :smiley:
@Leebo, I’m curious, would this be of any use to you?

1 Like

Well, I will probably continue to do reviews for another year or so, but I’m like 9 days away from never doing lessons or worrying about the timing of reviews again, so I probably won’t be thinking about mobile WKing much going forward. But I’d be willing to try it at some point.

1 Like

Just installed it! Thanks for your hard work :slight_smile:

For now, I love that you can spot which leeches one has. It makes it easier to focus on them and fix the problem ^^

What are your future goals?

Im not sure if you can do it, but I would love to see a WK mobile APP that has an “Anki Style Review”. Typing is really slow and hurts my hands after a long session. This is my only complain about the WK APP that is in the store. I really wish we could do reviews the same way we do in Anki in a mobile app.

1 Like

I am not too familiar with Anki. Would that be a system where you don’t have to input? You would look at the front (question), and then look at the back to see if you known it after you took time to think about it, and then you would tell the application how well you did so it know how to handle SRS for that item?

Here are a couple of points under the assumption that I have understood this correctly:

  1. While this is doable, I would be unable to tie this into the WK system without it being JS programming. This is a language completely alien to me and not on my list of priorities right now (too much stuff going on).
  2. If we were ok with the idea if having the reviews be independent of WK as a kind of self-study thing when you’re not on WK, this is a lot more realistic but would require something from WK’s API 2.0 which I am dearly waiting for (item id’s and easier caching - currently there is no item caching in the app). The API releases end of year. Note that this option would not be an alternative to a WK subscription as I would never support using their material in that way. It would work as long as a WK subscription is active only.

In summary, if you want it tied in to WK it’s probably nothing to be done by me, but I welcome anyone with the JS skills to contribute. If it is independent of WK, we wait at least till end of.year for the next API :slight_smile:.


EDIT: option 3: no srs, just anti style drilling on-demand but without moving items up and down an srs scale. I could probably implement this now, if needed. And put in the options whether one drills anki style or wk style.

EDIT 2: All options require converting romaji to kana or forcing a jap keyboard on users when reading reviews appear. This is something I need to think about, not sure I want to go down that route. I am happy to use ready-made modules that will do the translation on the fly though if anyone has one.

1 Like

Thanks for the feedback! And thanks to @chrispthompson for the help in conceptualizing leeches for the code. I am hoping to add a review timeline soon like the one I believe is on iOS. I honestly have never understood the demand for that as when you do one set of reviews, the next one in the timeline could change because of it, whether you get any items wrong or not.

  1. 3 reviews in one hour (all items apprentice 1)
  2. 4 items in 9 hours (all items apprentice 2)

Assume you get all 3 right in one hour, this is the new status:

  1. Finished
  2. 7 items in 8 hours

However given that people seem to like this kinda thing, I guess it might as well be there. Will try and get to it when I can.

1 Like

Oh I see. So it woudnt work for me = (

I really needed a script that helped me review without inputting in a mobile.

The app looks a whole lot better than before! Good job and keep it up!

I might be able to help you with that, if you have an android phone. PM me if interested so we don’t derail this topic further :stuck_out_tongue:

1 Like

I dont even know how I can PM someone here. Is it possible?

PM’s are disabled.

Noticed, made a topic instead.
Back to ontopic!

1 Like

Why are they disabled :scream:

Thank you :slight_smile:

I would appreciate as much feedback as I can get on the app, so please let me know what you think once you’ve tested it too! :slight_smile:

It’s how the WK team decided to make it when we switched to these forums.

1 Like

You could add a percentage number on the bar for the level and WaniKani progress (Dashboard).

It’s a pretty insignificant idea, I know. Oh well, better sharing then staying quiet :slight_smile:

PS: I have yet to study my leeches, so I’ll let you know about that part of the app later on :slight_smile:

Thanks for your hard work.

Good shout! This is done :slight_smile:.

1 Like

If you did have it on GitHub I wouldn’t mind seeing if there was a way to pitch in. I’m a Java pro, but not had too much experience with Android development so far.

I’ll host it as soon as I can. Some time next week. In the mean time I want to refactor it a bit so you don’t judge my speed coding too hard. You know when you can’t be bothered and your if statements start taking in arbitrary numbers to do things not remotely related to the arguments? Yeah… makes code unreadable and mine is peppered with those right now :sweat_smile: .

Among other reasons the staff have mentioned that discourse allows the admins to view PMs, which they considered a bit creepy. There is a PM system in place, but it only allows you to respond after an admin has initiated contact.

1 Like