An Android app that allows you to scan Japanese words from a picture and search for its meaning from a dictionary.
MIT License
Jisho Lens is an app that allows you to scan Japanese words from a picture and search for its meaning from a dictionary. In a nutshell, think of it as a Google Lens but instead of searching from Google, it searches from a local dictionary.
It's a bit long, bare with me. Or just ignore it if you're not interested lol
This app was made mainly because I got frustrated whenever I see a word on my phone and I don't know what it means. I mean, just Google it, right? No. You see, Japanese has multiple writing system, one of them is kanji. In order for me to be able to Google it, I need to know how to write it. The thing with Kanji, unlike latin alphabet, is that you can't just see a letter and just be able to write it down using a keyboard.
Now, imagine this scenario. You're a non native English speaker, you came a cross the word "depression", you don't know what it means, easy, just Google it up innit, just write "depression" on Google and you're done. Now how about Japanese? Imagine you're not a native Japanese speaker, you came across a word "鬱" (which, in small size almost looks like a block of square, at least to me). How do you supposed to know if it's read as うつ? You don't. That's why I made this app to try to solve this problem.
I use this awesome browser extension called Yomichan which basically works like a magic wand. You just hover your cursor over an unknown word and it will pull up a dictionary entry. Unfortunately it only works on browser. This is also another reason why I made this app, I want something like this to be available on mobile.
I found this cool project the other day called Jidoujisho which is an app that enables immersion learning. It's a really cool project and I like it. Why don't I just use it? Well, it's more fun to make it yourself ¯\_(ツ)_/¯. Jisho Lens is basically a fraction of that project and I prefer having simpler app that does one thing that suits my need. I recommend you to at least check it out, it may work better for you because it has tons of other features ;)
Here are some features of this app:
There are some limitations of this app:
This project is split into two parts: the android app and a small tool to generate the database from a dictionary.
Here are some of the framework/library used for the android app.
Please refer to DbGenerator/README.md for more details.
You must first import a dictionary to use this app. Just go to the settings page and press the Import Database
menu, you should be able to pick the database file that you can download from the release page. I made the dictionary separated so that I can update it more frequently without having to reinstall the app everytime. If you don't import the dictionary, you won't be able to use any of the features and will get a warning like this:
After you import the dictionary, everything should be self explanatory, but in case it wasn't clear enough, here are some videos demonstrating how to use this app (It's hosted on streamable because I don't want to attach it in the readme, it's definitely not me being too lazy to attach them here, no).
Dark mode | Light mode |
---|---|
Dark mode | Light mode |
---|---|
Dark mode | Light mode |
---|---|
Dark mode | Light mode |
---|---|
It's just a standard Flutter project, you can develop it just like any other Flutter app using Android Studio or Visual Studio Code. If this is the first time you're using Flutter, you can follow the official instructions to set it up. Although, if you want to develop any features related to the dictionary, you need to generate the database first by following the instruction in DbGenerator/README.md.