KOReader + Japanese: An Ultimate Setup Guide️
You are reading version 1 of this article, head to Changelog at the bottom of the page to see what changed since the last time you checked this article
E-Readers are so cool! This article will be preaching to the choir so I’ll skip the details about why they are. KOReader is essentially another operading system for your E-Reader device (it also is useable on desktop and Android but people typically have better setup for these). It’s like breathing new life in your device and unlocking its potential. As you can probably tell from the description this is of course very “tinkery” and not for the faint of heart. Of course the average Japanese learner stumbling on this will probably fit the personality traits required.
Pros/cons
Let’s have a rundown of the pros and cons of such a tool, that way you’ll know if it might be for you:
- Support of more formats (epub for Kindle for instance)
- Stardict Dictionaries Support (Kindle dictionaries are generally good, but kobo dictionaries are a hassle to make work and need a lot of tinkering)
- Custom fonts support
- Better manga/scanned novels support, notably with margin cropping (so more real estate gets used naturally) or niceties like better scrolling
- Syncing between devices
- Book servers to get your books wirelessly or even from anywhere in the world (OPDS - see more later, Dropbox/Google Drive, Wikipedia…)
- Plugins to extend the functionality even more
- Powerful gesture system
- And many, many more things… (neither this link nor this list are remotely close to being exhaustive, besides, this article will go in more depth about some of these pros and more that are unlisted here)
As you can probably tell, the pros depend on what your base device is capable of, as the capabilities of the default OS are different for each device ; for instance, for me, I love the file based hierarchy (like on a computer) compared to the default kobo system (which had a tendency to forget to scan new books half the time then not realize it needed scanning unless I added more books, which was extremely infuriating). This is also why on android based e-readers it is not as big of an improvement, since most of these things can often be done better on android naturally. Now in the interest of fairness here are some reasons why you might not want to use KOReader:
- Possibility to render your device useless (bricking) or in need of a factory reset - realistically minimal but not for the faint of heart for sure
- Possible voidness of warranty
- (Unsure) Depending on the device, may overwrite the default os and render access to the official stores impossible? I know this is not a problem on Kobo but unsure about Kindle/Pocketbook/etc
- The amount of tinkering needed can be a deterrant
- Some devices flat out can’t install it (for instance it gets harder and harder on modern/up to date kindles)
- Vertical writing is a hack (it used to be flat out absent until very recently)
I will not cover how to install KOReader here (because the process is different for everyone) or make a tutorial on how to use it, so from now on I’ll assume you’ve decided to install it (aware of the risks) and that it is set up. As a whole this article is more of an index of what to look at instead of a step-by-step guide. You can look here for instructions on installing (I recommend reading well, ahead and thoroughly before attempting anything) and here for the user guide.
TODO info shortbox the patch doesn’t work on fdroid versions of koreader https://github.com/koreader/koreader/wiki/User-patches
And now, without further ado, I’ll be sharing my top tips for the best experience in japanese in no particular order (mostly, when logical I’ll introduce things one by one) but tagged as IMPORTANT, OPTIONAL or ADVANCED, so feel free to skip things that don’t interest you and are optional or advanced. This will also not be remotely exhaustive (again, the user guide and exploration are your friends) because it’d be a silly thing to aim for (imagine for instance compiling all tips for windows users in one). The screenshots will be taken on a brand new version on linux and I’ll be guiding you starting from a blank state towards a similar setup to mine as the steps go on.
[IMPORTANT]: An extremely useful feature: Menu Search
New in a fairly recent of KOReader, this feature will become your new bestie, it allows you to search anything in the top menu, and either teleport to it or, even better, WALK you there. In other words it’ll one by one press the buttons needed to reach your destination. This is UX goodness to drill into you things you keep forgetting the location of. I put this first because this’ll be essential if you get lost or don’t know where one of the options I name are.




[IMPORTANT]: Folder breakdown
After installing KOReader, you’ll find a koreader folder with contents looking like the ones below. The location is dependent on your device. You can find it thanks to the dictionary wiki page. Just remove everything after data
and you’ll get it. For instance for me on Kobo, it’s at the root of the Kobo sd, in the .adds folder then koreader. From now on I’ll be refering to this as the KOReader Root
folder, this is the root of where we’ll be putting our fonts, dictionaries, plugins, etc, so it is very important to all be on the same page (no pun intended).

TODO: add other folders for the example.
[IMPORTANT]: Toggling the Japanese Keyboard
A lot of what we’ll be looking at today will include eventually inputting Japanese, so let’s enable the keyboard.
In the top menu, TODO SECOND THE WHEEL -> Device -> Keyboard -> Keyboard layouts (or, once again, using menu search wink), you can add the 日本語 layout, note that you can have multiple layouts at once so feel free to check the ones you think you’ll need (for instance French, or Greek, and so on).
Going back, in layout specific settings -> ja, you can set the tap interval, keep that in mind and feel free to change it to your tastes after trying out the keyboard later.
Once you use the keyboard, you’ll see the TODOIMAGEINLINE world icon which toggles between layouts, then it works like the usual flick keyboard that you’re aware of. Unfortunately as far as I know there’s no Kanji support which is unfortunate, but usually you can work around it.
[IMPORTANT]: Custom fonts
Relevant wiki page / Relevant guide page
One of the first things you’ll want to be changing, KOReader supports the most widely used font types so you should not have issue finding something you’d like. Some examples include:
These are some of my personal favorites (but far from exhaustive of the good ones out there), so let’s see how we can add them to KOReader !
After downloading and extracting if needed, you’ll be in possession of a couple files. Copy and paste these (make one folder for the font name and all these font files related to that font type go in the same folder - you may need to create the fonts folder), then restart KOReader. Afterwards, in the top menu, press the second header item -> Font (or use menu search!) to browse through the available fonts, yours should appear.
Your font folder should look something like that:



[OPTIONAL]: Wirelessly retrive books from Calibre
Calibre (which you should be using if you have an e-reader) allows you to wirelessly retrieve books from it.
In Calibre:
- Click on Connect/Share
- Click on “start content server” then “Start content server”
- Take note of the ip and port (click on connect/share again)
In KOReader:
- On the file selection/home menu, select the TODO FIXME [][] Magnetizer icon, then “OPDS Catalog”
- Press the + in the top left, and fill the fields:
- Name can be whatever you want
- URL should be like
http://<ip>:<port>/opds/
, so if calibre for instance displays “192.168.4.83, port 8080”, it’ll behttp://192.168.4.83:8080/opds/
- username and password are left empty
- Save, then click your entry in the list, and it’ll be straightforward from here.
[ADVANCED]: Accessing your library from outside your house
This is an advanced topic, as the solution depends on a lot of factors, including your ISP, router model, and so on, so it’s impossible to write a one size fits all solution here. Thankfully, it’s not that useful in the real world as E-Readers tend to have plenty of storage. Personally I mainly use wireless delivery to not have to plug the flimsy micro-usb over and over again, and because it’s much more user-friendly than copying files around, but most of the time do it from my home.
If you’re interested anyway, there’s two main ways you could do it:
- The first is to use port forwarding, eventually pointing the OPDS URL to your domestic IP. It’s the more convenient solution of the two, but can fail in many ways (if you have a dynamic home IP for instance, you’ll have to often change the URL in KOReader) and is harder to explain as, again, setting it up depends on many factors.
- The second is to use something like tailscale or WireGuard to tunnel your connection to your home from the outside, and then connect to the Calibre server that way. It’s definitely more shaky but works brilliantly if your KOReader is installed on Android. If not, then it becomes a weird solution of sharing the Wi-Fi from your phone, connecting to it with your device and routing to home that way. Now you understand why port forwarding is generally the more preferable option.
[ADVANCED]: Some more OPDS Server recommendations
OPDS is a standard for content distribution, in other words, there are other servers that use it and allow you to acess content easily. If you have a NAS or anything of the sort, I recommend looking into:
- Calibre-Web, which is very useful to have besides OPDS features. If you’re hosting your books on a NAS, I recommend also installing Calibre on it and accessing it that way (with linuxserver/calibre, for instance), because Calibre doesn’t like being hosted on a Samba share.
- Komga for your manga needs. Unfortunately it doesn’t support syncing progress however.
- Kavita is another novel/manga reader, which supports two neat features: page streaming (so that you can skip the downloading to device part, very convenient for mangas that tend to be pretty heavy) which Komga supports as well and progress syncing with KOReader.
TODO Kavita + KOReader
[IMPORTANT]: Stardict dictionaries
Alright, now we have our prefered font, we actually got our books on our e-reader, so we’re almost all set to start reading. The power of KOReader over default e-reader softwares is in its lookup potential, the way it works is very similar to Yomitan, it essentially searches for the longest match in the dictionaries, from longest to shortest. It of course deconjugates (actually using the same rules Yomichan used before it became Yomitan). In other words, you’ll be getting very similar results on KOReader that you would on your browser. It was an absolutely game-changing improvement.
Now, you could get the latest JMDict directly from KOReader (menu search Download dictionaries!), but of course JMDict is very far from ideal.
You could use PyGlossary to convert your MD2 files to StarDict (the format KOReader uses), or you can grab this pack here which covers most of your bases:
TODO LINK MEGA DICTIONARIES
(In a future update to this article, I have plans to experiment writing a yomitan dictionary to stardict, which will increase the quantity and quality of dictionaries available. If this is something that interests you, please spread the KOReader gospel \o/ and consider supporting me)
To install them, copy the dictionary folders in the koreader folder
, in data -> dict (create the folders if needed). After extracting and copying, it should look something like this:
Then, in TODO magnetizer -> Settings -> Dictionary Settings you’ll see Manage Dictionaries and some number, if so it means it installed successfully. By pressing that you can individually enable and disable individual dictionaries as well as order them as you’d like (with the up and down arrows).
In a book, you can then hold press a word to display the dictionary.
[IMPORTANT/OPTIONAL]: Installing plugins
Okay, now we’re going to unlock the full potential of KOReader. Users are able to extend the functionality by creating plugins, I’ll show you two very useful ones for Japanese today, one to improve the speed of dictionary lookups, and one to mine to anki from within KOReader. If that doesn’t sound useful to you, you can skip all these sections.
As usual, our meeting spot will be the koreader folder
, in the plugin folder, you’ll want to extract the folders in there, one per plugin. After we’re done, it should look like that:
Then, in TODOWRENCH -> Plugin Managment -> tick the plugin you want to activate. Feel free to disable some stuff while you’re at it, to make the User Interface cleaner and the device more responsive. If you long press on an item, you can see a description of what the plugin does.
[OPTIONAL]: Dictionary Mode Plugin
Link to the plugin github page
This plugin makes looking up words way snappier, at the cost of making you need either use a gesture (or physical button) or aim really well at the blank spaces.
An alternative is to reduce the interval of the long press gesture (see TODOLINKTOBOTTOMSECTIONABOUTGESTUREINTERVALS)
Download it here, and extract the file into a folder, make sure to remove the -main so that the name is dictionary-mode.koplugin
then follow the steps above.
[OPTIONAL]: Anki Plugin
[ADVANCED]: Vertical Reading
[OPTIONAL]: Syncing Highlights
[OPTIONAL]: Auto Cropping
[ADVANCED]: Pre-cropping with imagemagick
[OPTIONAL]: RSS
If you’re reading this and you are over 30 years old, yes, there’s no need to adjust your screen, you are indeed reading this in 2025 (or later). For those unaware, RSS Feeds are a way to subscribe to a website’s news feeds, so at a glance using RSS Readers you could check up on multiple websites to see if anything was new on them. You can easily imagine why, after Facebook and Twitter’s increasing popularity, we don’t hear about them anymore.
Websites nowadays make these feeds harder and harder to find (when they have one at all) but Japan is actually much better at it on average, which is very lucky for us.
[OPTIONAL]: Setting up syncing between devices
[ADVANCED]: Custom Koreader Sync Server
[OPTIONAL]: Optical Character Recognition
Random cool stuff:
- SSH Server
- The Pages thingie speed stuff
- Cog -> gesture intervals
Conclusion
- mogrify/cropping/page splitting
Wikipedia
- syncing notes /highlights
Changelog
2024-12-??: Version 1 of the article.