[iOS, Android, Web] Wanilog, modern WaniKani stats

Neat work buddy. Another feature to add could be a level-up time estimator that takes into account total lessons per day, including how many are radicals and kanji (since they drive level progression), as well as average accuracy %. This will be very helpful along with the projection feature.

Great work!

What tech stack did you use to build it? You have some impressive UX skills.

The “Can I read this” feature is a nice touch!

A bit of feedback:

  • Would be nice to be able to sort the items on the SRS distribution page
  • Would be nice if the Time per level chart had labels for days to completion (it’s nice to see them all at once, rather than hovering one a time)
  • The leeches aren’t showing exactly what I’d expect. It’d be nice if the calculation factored in the length of time I’ve been struggling with a particular kanji (e.g. Kanji that have been stuck on guru/apprentice for months should be “weighted” heavier than Kanji that were learned last week - in fact, I’m not sure it makes sense to include Kanji that were recently learned as they’ll be sure to have a lower accuracy - leeches by definition have been around for a while, no? Also an option to exclude burned items, etc. would be nice!).
  • For the kanji tooltips, it might make sense to have the meaning directly under the kanji, or have it as the very first line item - I found myself wanting to know the meaning first and foremost and struggling to find it
  • It might be better to have the JLPT Coverage, Joyo Coverage and Frequency Coverage collapsed onto the same page with an option to switch between them, as they’re effectively just variants - as of now I have to click back to navigate between them
  • Idea: for the “goal date”, it would be cool to know how much faster I need to go to reach my goal date on time (e.g. days per level needs to be 14 instead of 20, etc.)

Hey, really like the site!!

Looking at one thing, though, and I think there is some sort of bug with the level-up history.

On Wanilog, here is the first part of my history:

And on wkstats:

I can tell you that unfortunately wkstats is accurate here for level 5 :sweat_smile: (And looking at some of the other actual low-level lengths, wkstats is longer on a good chunk of them. For example, level 2 on wkstats = 64 days 5 hours; wanilog = 58.2 days)

Thank you Deadpikle! Trying to reproduce this - did you reset your WaniKani levels at some point? My theory is that wkstats is showing the combined days across all resets.

I’ve never reset my WaniKani levels, sorry :grimacing:

I took a look at the level_progressions API. Are you using this one? Are you using unlocked_at or started_at? Because I think perhaps wkstats is using unlocked_at, and perhaps you are using started_at? At a rough glance with no actual math besides some quick figures in my head, that could be the difference.

My gut says unlocked_at would be the right one to use as that is when you “move up” to the next level and have things available, but perhaps I’m wrong.

You could perhaps have an option for both!

This looks super nice!

I mostly use Android and I can’t get the tooltips to show easily. Tap and it takes me to WK, then press back and the tooltip shows. Wkstats, I could get them to show by long pressing and it didn’t go to WK. (It did also select text which was annoying but tolerable.)

I think it’s possible to differentiate taps and clicks. It’d be cool for a single tap to open the tooltip, then a second tap (or a link button/icon) would take you to WK. It’d also be good to be able to close the tooltip easily without accidentally opening another.

Wow thanks so much for investigating! Yes I think you might be correct - I was indeed using started_at. Just pushed a change which gives you the option to choose which one the chart uses - let me know if that fixes it for you?

Thanks Ertoo. Great idea, I’ve just implemented this now. Hope that’s working better for you.

Looking much more like my actual level graph now! 
as embarrassing as level 5 was :joy: Everything is matching wkstats now +/- an hour, probably with rounding or something. But I don’t care about that and no one probably will lol.

I think my other suggestion would be another thing like wkstats where there is the zig-zag for bars that are way taller to keep the graph less skewed, but it’s a minor thing:

Thanks for the really quick fix/adjustment. :slight_smile:

Tooltips work really well now on mobile. They even adjust if you scroll. That was an amazingly fast update! Thanks!

Thank you Chris! Stack: Next.js, Tailwind, Radix UI, Recharts, TanStack Query, Dexie for offline IndexedDB.

Pleased to say I’ve shipped most of your feedback!

  • Time per level labels: new “Show day counts” toggle
  • Leeches: added a new algorithm which you can try, and an option to exclude recently unlocked items
  • Meaning moved to the top of the tooltip.
  • Coverage pages: header switcher between JLPT/Joyo/Frequency so you don’t have to go back to the dashboard.
  • Goal date: when behind, Home and Projection now show “needs ~Xd/level, you’re at Yd”.

Sort on the SRS distribution page is still on the list, but could you clarify what kind of sorting you’d like to see? Cheers!

No worries - just added a “clip outliers” toggle :+1:

Amazing! Thanks for the quick update.

The leeches now show exactly what I was hoping for. Would it be possible to see more than 20? Maybe paginate them?

For the SRS distribution page, it would be nice to sort by SRS stage!

No worries - both of those are done now :grinning_face_with_smiling_eyes:

Thanks!

Sorry, I meant grouping by SRS stage within the existing Level grouping. The Group By feature is cool though!

Ah that makes sense! Should be good now.

That’s great, thanks! Thinking about it a bit more, something like the generic “Group By” / “Sort By” on wkstats would be amazing.

Hi there, this looks great! Got a question: I’m using Wanikani’s leveling order to learn kanji and vocab, but I don’t actually use Wanikani’s review system itself. So Wanikani ‘thinks’ I’m at level 3, while I’m acutally at level 10, as I don’t use their review system, but my own. Would it be possible to put in the information by hand into Wanilog? I wouldn’t know which are burned and all that, but I have kept a record of how long each of my level-ups have taken, and which kanji I know already. So I thought maybe I could put the info in by hand to still be able to use the ‘can I read this’ function, etc. If its too much work, nw! Just wondering

Thank you Mikhayu! I’ve added a section setting on the settings page - “Kanji outside WaniKani” where you can paste other kanji you already know. This list will feed into the Coverage pages, Reading card, Reading coverage article scoring, and Can I Read This module :saluting_face: Hope that helps

That’s perfect, thanks! Now I can finally keep track of what I know haha

wkstats and Wanilog only track kanji, right?