this post was submitted on 11 Nov 2025
170 points (98.3% liked)

Opensource

4430 readers
84 users here now

A community for discussion about open source software! Ask questions, share knowledge, share news, or post interesting stuff related to it!

CreditsIcon base by Lorc under CC BY 3.0 with modifications to add a gradient



founded 2 years ago
MODERATORS
 

As someone who loves both coding and learning Japanese, I’ve always wished there was an open-source, truly free tool for learning Japanese, kind of like what Monkeytype is in the typing community (fun fact: we actually have 2 Monkeytype devs on board with us now!)

Unfortunately, most language learning apps these days are either paid or closed-source, and the few free ones that are still out there haven’t really been kept up to date. I felt like that left a gap for people who just want a straightforward, open-source, high-quality learning tool that isn’t trying to milk them and/or sell them something.

That being said, I didn’t want to just make another “me too” language app just for the sake of creating one. There needed to be something special about it. That’s when I thought: why not truly hit it home and do something no other language learning app has done by adding tons of color themes, fonts and an extremely fun and customizable experience, as a little tribute to the vibe that inspired me in the first place, Monkeytype.

So, that’s what I’m doing now. We’ve already hit half a thousand stars on GitHub and reached thousands of Japanese learners worldwide, and we’re looking to grow our forever free, open-source platform even more.

Why? Because Japanese learners and weebs deserve a free and genuinely fun learning experience too.

Live demo: https://kanadojo.com/

If you wanna make our day by dropping us a star or even contributing, then you can do so here --> https://github.com/lingdojo/kana-dojo ^^

どもありがとうございます!

all 35 comments
sorted by: hot top controversial new old
[–] k0e3@lemmy.ca 24 points 3 weeks ago* (last edited 3 weeks ago)

Very cool! As a Japanese-English interpreter, I'd love to help out in any capability that I can. I'm gonna make my wife try it out too.

Edit: I noticed two issues with the kanji part. One, it's currently difficult for the user to see which reading is the 音読み and which is the 訓読み. Furthermore, it displays the okurigana of a kanji (e.g. the きい in 大きい) as if it is one of the ways to read the kanji.

[–] refalo@programming.dev 14 points 3 weeks ago* (last edited 3 weeks ago) (4 children)

Why do so many programmers seem to be learning Japanese? I have been noticing this trend for literally decades at this point.

[–] msage@programming.dev 23 points 3 weeks ago (1 children)

Weebs.

They are filthy weebs.

.

.

.

I know because I am one.

[–] AngularViscosity@piefed.social 12 points 3 weeks ago (2 children)

The majority, maybe, but I don't even like anime or J-pop. It's all about the culture and the awesome writing system.

[–] higgsboson@piefed.social 6 points 3 weeks ago (2 children)

I mean... that makes you a weeb. Youre obsessed with Japanese culture. Otaku is the term for nerds who like manga and anime jpop, etc, etc.

[–] Get_Off_My_WLAN@fedia.io 2 points 3 weeks ago

I think if they like just the overall culture a lot and aren't a weeb, Japanophile is appropriate.

[–] AngularViscosity@piefed.social 2 points 3 weeks ago

I wouldn't describe me as obsessed, though. Nothing in my house or on my person is Japanese besides a pair of chopsticks I was gifted that I don't even use. If I didn't say anything you wouldn't know that I can read it by looking anywhere but my browsing history that includes the news, Wikipedia and a handful of YouTubers.

I wouldn't mind being a weeb but it's only a niche interest as much as I'm into other things like board games and art. You don't have to be a weeb to see learning Japanese as a personal challenge and a hobby.

[–] msage@programming.dev 1 points 3 weeks ago (1 children)
[–] RustyShackleford@programming.dev 10 points 3 weeks ago* (last edited 2 weeks ago)

Many westerners idolize, fetishize, and fantasize about Japanese culture, history, and people.

And while the Japanese deserve hearty praise for their aesthetics, cultural philosophy, poetry, martial disciplines, and contributions and achievements in science and engineering, even the most casual of perusal of their history reveals that, for many centuries, and one could argue currently, they have been a society of masochists ruled by sadists.

Alas, aren't we all, I suppose.

[–] dil@lemmy.zip 2 points 3 weeks ago

They watch anime, want to watch it when it releases without subtitles lol

[–] AnarchistArtificer@slrpnk.net 1 points 3 weeks ago (1 children)

I learned some Japanese from doing origami, because at the time, the best books I had access to were in Japanese. That may seem disconnected from your question, but I consider it relevant, because I feel that my love for origami and my love of programming stems from the same place in me

[–] MeThisGuy@feddit.nl 2 points 3 weeks ago

origami isn't just picture books? fold me impressed

[–] Lumidaub@feddit.org 13 points 3 weeks ago (1 children)

long loooooooong theme

*cackle*

[–] tentoumushi@sopuli.xyz 4 points 3 weeks ago

Hahaha, finally someone noticed

[–] it_depends_man@lemmy.world 12 points 3 weeks ago* (last edited 3 weeks ago) (1 children)

Seems cool, but you're missing some info in your privacy and terms, don't you?

How do you save the progress data if you don't collect it in e.g. a cookie?

The vocabulary doesn't have keyboard shortcuts for progressing to the next thing, I like the shortcuts on the kana, would like them there too.

But it's a very good website, it will help me for sure!

[–] tentoumushi@sopuli.xyz 10 points 3 weeks ago (2 children)

We're using local storage that lives in your browser instance and doesn't sync between devices, so no cookies involved! ^^

[–] it_depends_man@lemmy.world 3 points 3 weeks ago* (last edited 3 weeks ago) (1 children)

I'm pretty sure that meets the legal definition of cookie, but that's not even my point. I'm not opposed to it either, clearly it's required for the site to work. And local storage is way better than online, so thanks for finding and using that solution.

But even if you're not sending it to a server, you are collecting that data and that's not mentioned. I would like it if you put a line somewhere "we're keeping track of your progress and performance and blah blah etc etc, you can back it up or delete it here".

And this whole thing might sound like more critique than praise, that's unfair, I'm 98% very happy with the project, it's a great idea and fantastic implementation!

[–] bufalo1973@piefed.social 5 points 3 weeks ago

Collecting data implies it goes back to the server.

[–] msage@programming.dev 0 points 3 weeks ago (1 children)

Local storage is the same as cookies afaik.

[–] tentoumushi@sopuli.xyz 11 points 3 weeks ago

Don't worry, not in this case! Generally speaking, cookies first collect data on the client and then send it over to the server. But in our case, there is no server (backend) - it's just a client-side Next.js application sent over to the client (your browser), and the local storage that stores progress and preferences data in the app just lives locally and never actually leaves the browser! We (well, me) have no idea what progress data our users have, because nothing is sent over from the app (you can see for yourself by checking your browser's Network tab!)

[–] Get_Off_My_WLAN@fedia.io 6 points 3 weeks ago

It looks cool!

I haven't taken a deep look yet, so I don't know if it's a bug or was a human error, but for the kanji yomi, some of kana don't seem to match the romanization for some reason.

Like, for 人 it shows るン next to 'nin', 大 shows テイ next to 'tai', 二 shows ビ next to 'ji' for me, and many more.

[–] grillgamesh@lemmy.dbzer0.com 6 points 3 weeks ago* (last edited 3 weeks ago) (2 children)

from what I've seen it looks like a great way to learn - but learning is really only possible for ADHDers like myself of its convenient and easy to access; sometimes "game-ifying" the process helps as well. (for lack of a better word)

also, voice reading doesn't work on Firefox mobile (no ability for speech synthesis for the mobile browser, as far as I've been able to tell, nothing in settings or documentation) - is this intended as a desktop site, or maybe a (vomit) chrome-exclusive website?

hope to see a v2 post soon with the issues addressed so I can reccomend it to others in my circle!

sysinfo:

  • grapheneOS latest
  • pixel 7 pro
  • Firefox mobile installed from google play (mirror), checksums match official Firefox release page
[–] myster0n@feddit.nl 3 points 3 weeks ago (1 children)

I've played it on my Samsung galaxy tab A9 android tablet with Firefox focus, and everything seemed to work

[–] grillgamesh@lemmy.dbzer0.com 3 points 3 weeks ago (1 children)
[–] myster0n@feddit.nl 4 points 3 weeks ago

I've noticed that one of the default apps on this Samsung device was Speech recognition and synthesis by Google

[–] orbituary@lemmy.dbzer0.com 4 points 3 weeks ago

I like it. It is refreshing my memory of the syllabaries. Well done.

[–] caseyweederman@lemmy.ca 2 points 3 weeks ago

I've been using this, it's great! Thank you.

[–] tatterdemalion@programming.dev 2 points 3 weeks ago* (last edited 3 weeks ago)

素晴らしいアップりですね!使おう。

音のボタンが壊れてるそうです。音が出ません。

Play UI + feedback sound effects: Off
Enable pronunciation audio: On

^ この設定では音が出ません

Play UI + feedback sound effects: On
Enable pronunciation audio: On

^ この設定では音が出ます

発音の録音があればいいな。

[–] Lumidaub@feddit.org 2 points 3 weeks ago

Two things I noticed:

At least on mobile, I think selecting a set is difficult. That's because you get this huuuuge list of words/kanji with all the info displayed. It might be more user-friendly to reduce the size of the characters in the list and probably also remove all the extra information like readings and meaning.

Also, the button for preferences keeps bouncing, like it's yelling at me "click on me, i have new information for you! important! click!"

[–] Speculater@lemmy.world 1 points 3 weeks ago

Very cool so far!! Great setup and easy to get into. I'll definitely be working with this!

[–] Taevas@beehaw.org 1 points 3 weeks ago

That's awesome! Thank you for making this! :D

[–] Crypxtic@programming.dev 1 points 3 weeks ago* (last edited 3 weeks ago)

Is there a sort of how-to guide on how to use this for learning? Would love to learn more about it. EDIT: I might be too dumb for this.