What I have is a basic flash card app with double sided cards (for writing (i.e. drawing) the kanji, and reading). What sets it apart is that each card contains all the relevant dictionary data, and users are encourage to bookmark a couple of words to help them remember the writing or the reading of the kanji.
What I am working on now is the database backup/sync system. I store all the user’s progress in indexeddb store in their local browser. To sync I am writing a simple patch system, so they can pick a remote somewhere (e.g. a gist on github) and push their latest patches, when syncing progress I would check the hash of the patch and apply the relevant patches.
After that I am planning on turning it into a progressive web app so users can download the app onto their devises.