Yomikiri is a Japanese immersion learning tool. As you read Japanese text and encounter words you don't know, look up the meaning and add the word to Anki flashcards.
Yomikiri is available for Chrome, Firefox, and iOS.
-
Shift + Hover over a word to view definition. It recognizes word boundaries within sentence.
-
Add word to Anki. You can preview and edit the note before adding.
If Anki is not running, notes are stored and automatically added later. You don't have to keep Anki running in the background all the time.
-
View sentence translation.
-
View relevant grammar with a link to Tofugu.
Please note that we do not support building the project on Windows. You may want to use WSL to build the project. The build system has only been tested on MacOS 14 (ARM) however, and may not quite work on Linux.
NodeJS, pnpm, Rust & cargo, wasm-pack, Taskfile must be installed.
To build for all targets, run the following commands. If you only need to build for desktop browser extension, go to later section instead.
# install node dependencies
pnpm install
# Build chrome, firefox web extensions, and get mostly there with the ios app
task build:extensions RELEASE=1
The desktop browser extensions are built into /main/build/
.
To build for ios, open /safari/Yomikiri.xcodeproj
on XCode, and run build.
After modification, run task format
to fix formatting, task lint
to check for lint errors, and task test
to run tests. These commands are universal, and are defined in repo root, and all sub packages and crates where relevant.
Run task dev:chrome
or task dev
for short.
In Chrome, go to chrome://extensions/
, toggle developer mode. Press 'Load unpacked' and open /main/build/chrome
.
Run task dev:firefox
.
In Firefox, type about:debugging
in the url bar to open debugging menu. Switch to 'This Firefox' tab.
Press 'Load Temporary Add-on...' and open /main/build/firefox/manifest.json
.
Open /safari/Yomikiri.xcodeproj
on XCode, and run the build.
Building automatically builds rust crates and bundles web files in ./main
.
To build for Android, you need to install cargo-ndk first:
cargo install cargo-ndk
Then open the Android project in Android Studio and run the build. This automatically builds rust crates and bundles necessary web files.