Introducing KameSame - a new reverse-Wanikani web app!


OS X 10.14 and Chrome 70 (although it might have been 69 at the time). Doesn’t happen consistently.

I don’t have any evidence for this besides not being able to think of anything else, but I wonder if what was displayed to me and what was actually sent to the server are different.

Perhaps I’ll practice with the network tab open so that I can inspect the network requests if it happens again.


I’d appreciate that. Note that the review results come back in very small JSON payloads via a websocket connection, so it’s under a separate tab. Also, if the connection is very slow, the client will attempt to replay the result to the server after a while


Shoot. I assumed it was happening all in the client after I didn’t see anything in the XHR tab upon submission. Will check websocket tab next time. Any chance you can reset the timer for all my vocab/kanji so I can do a run and inspect?


Sorry, I don’t have a way to do that because the implementation doesn’t use any timers


Hey - it happened again. Here’s the websocket info for my submission (JSON serialized):


Here’s the response:

“{“identifier”:”{“channel”:“StudyChannel”}",“message”:{“reviews”:{“518”:{“item”:{“id”:515,“type”:“kanji”,“app_url”:“兄",“level”:3,“parts_of_speech”:null,“text”:“兄”,“meanings”:[{“meaning”:"Older Brother”,“primary”:true,“accepted_answer”:true},{“meaning”:“Big Brother”,“primary”:false,“accepted_answer”:true},{“meaning”:“Elder Brother”,“primary”:false,“accepted_answer”:true}],“readings”:[{“type”:“kunyomi”,“primary”:true,“reading”:“あに”,“accepted_answer”:true}],“spellings”:,“relatives”:[{“id”:5748,“text”:“兄貴”,“type”:“vocabulary”,“readings”:[{“primary”:true,“reading”:“あにき”,“accepted_answer”:true}]},{“id”:2821,“text”:“兄弟”,“type”:“vocabulary”,“readings”:[{“primary”:true,“reading”:“きょうだい”,“accepted_answer”:true}]},{“id”:2620,“text”:“兄”,“type”:“vocabulary”,“readings”:[{“primary”:true,“reading”:“あに”,“accepted_answer”:true}]},{“id”:2621,“text”:“お兄さん”,“type”:“vocabulary”,“readings”:[{“primary”:true,“reading”:“おにいさん”,“accepted_answer”:true}]},{“id”:7717,“text”:“従兄弟”,“type”:“vocabulary”,“readings”:[{“primary”:true,“reading”:“いとこ”,“accepted_answer”:true}]}]},“most_recent_attempt”:{“text”:"\b兄",“outcome”:“incorrect”,“alternate_match”:null,“actual”:null},“complete”:false,“srs_stage”:5,“failed_review”:true}},“request_id”:74}}"

There appears to be a \b prefixed to my submission, which I guess is ASCII for backspace. When I copy my submission into a variable (say, x), x[0] == ‘\b’ evaluates to true. I swear I’m not hitting backspace for these (said every user ever), so I’m not sure how it’s happening. Any chance you could add some more sanitization to the submission (I know you already trim it to remove whitespace)?


It would be great if KameSame could be more flexible in accepting “almost correct” kanji, such as katakana エ、カ、タ、ニ、ロ which are similar to 工、力、夕、二、口.


I’ve finally gotten some time to work on KameSame this week. My main focus is on improving the incentive to stick with KameSame by implementing a level & XP system. That’s actually mostly in place already, but I’ve been careful not to expose it through the interface (spoiler: you all have a level, you just can’t see it!)

However, today I do have an incremental update to improve the results and flow of the review pane. From now on, your review queue will shuffle all available reviews (rather than prompt you to type how many you’d like to study). Because KameSame does a good job of saving your session and surviving refresh/forward/back, it doesn’t seem necessary to batch up your reviews in the same way it does for lessons.

More importantly, you’ll see an improved result screen with the rankings of everything you got correct & incorrect, like so (click for the full height image):

As the screen suggests, any time you click “Home” from the study screen, you can preview your performance while you’re doing reviews and then resume the review session without losing any state.


Thanks, the new summary screen looks good! What’s the difference between resuming and restarting a review session.


If you resume, it’ll just continue your current progress and retain current statistics (percentages, review summary, etc). If you restart, it’ll clear those stats as well as pull in any items that became ready for review since you started


Hey, I seem to be having an issue with it just sitting on loading after I submit an answer since the update. Using my mobile browser.


Sorry to hear it! First could you try opening a new tab and trying again?

Also, if you could share anything in your browser’s JavaScript console that’d be a great help


Thanks for the quick reply.

I’ve tried it again in an incognito tab and the same thing is still happening. To be honest I’m not sure how to inspect the console on my mobile browser but I’ll see if I can follow a guide.


Thanks for your hard work. I’ve been using KameSame for about 2 months now, and it really helps me to recall and visualize the kanji and vocab. WK wouldn’t be the same without this app :wink:

Keep up the great work!


I’m really sorry that you’re still experiencing this. I just reviewed the error logs (and didn’t find anything), then upgraded most of the libraries KameSame depends on.

Tot roubleshoot further, could you e-mail me at so I can debug?

In the meantime, if you could try logging out and logging in again, try another device or browser, etc, that’d be a great help to verify whether it’s a device/browser or something with your particular user.


Good news, I think I found the source of the error after adding some extra bug reporting. Please try again ~5 minutes and the bug should be fixed


Happy to say it’s now working perfectly. And thanks for fixing it before my reviews piled up too much! Liking the new format, and thanks for your hard work.


I think there may be a minor issue with the new summary screen. I made a mistake during a review and I saw that the incorrect vocab hab a little green arrow on it, just like some of the ones for which I answered correctly.

I guess it was supposed to have a red arrow pointing down to show that its ranking went down?
I use firefox 64.0 on windows 10.

And by the way, thank you for creating and updating KameSame, it’s great!

Also, this is my first post on on WK, so hello everyone!


LOL, that should probably be a down arrow, huh?

Will look at that tomorrow, thanks!


Fun side-announcement: I just open sourced a significant component from KameSame’s codebase: the home-grown library responsible for communicating every flashcard answer and response over websockets (via Ruby on Rails’ ActionCable).

For anyone interested, it’s in an npm module called sockem and can be found here:


This should be fixed now, thanks so much for pointing it out!

Edit: nevermind, totally not fixed. I’ll have to dig in tomorrow

Edit 2: nevermind, totally fixed