chimimouryou Discord Companion

AnkiWeb addon 25885905

Passes your current reading status—book, chapter, progress, speed and cover—from this reader to the Discord desktop app as a customisable rich presence.
AI-generated summary; may contain mistakes.

sync-integration

Open on AnkiWeb GitHub Ask about alternatives

AnkiWeb

Votes
0 (👍 0 · 👎 0)
Updated
2026-10-27
Anki versions
2.1.1~
Languages
Python, JSON
Description language
en

Maintenance

active

  • Last update or commit: 2026-10-31 (1 days before the snapshot).
  • Test files: 194.
  • GitHub Actions workflows: 5.
  • Commits in the last year: 848.
  • Issues are turned off.
  • Pull requests: 0 open, 433 merged.

Will it work on my Anki?

Version branches
Min AnkiMax AnkiUpdated
2.1.1+2026-10-27
History across monthly snapshots

Loading…

Similar addons

Anki Chess Companion Addon

Automatically checks weekly for and installs updates to chess note templates, exposes an API for added template functionality, and saves configuration options to templates.

card-templatesbackup-maintenance

8 votes 68% approval 👍 8 · 👎 0 ⭐ 189 Anki 25.09.4~ Updated 2026-05-16

Description

chimimouryou Discord companion

Shows what you're reading in chimimouryou as your Discord status: the book, chapter, progress, reading speed and cover, laid out the way you choose.

Browsers can't talk to Discord directly, so chimimouryou sends your status to this add-on, and the add-on passes it to the Discord desktop app on the same computer. It works with every version of chimimouryou: your own server, the GitHub Pages site and the desktop app.

What you need

  • Anki Desktop and the Discord desktop app, running on the same computer
  • chimimouryou, with the Discord plugin turned on (Settings → General → Plugins)

Setup

  1. Install this add-on and restart Anki.
  2. In chimimouryou, open Settings → Discord and choose what your status shows. The preview shows how it will look.
  3. Open a book. Your status appears in Discord within a few seconds.

The add-on starts when you open an Anki profile and stops when you close it.

Your phone and other devices (optional)

Pair the add-on with your chimimouryou social account, and the books you read on your phone or another computer also show up in this computer's Discord:

  • Automatic: if you're signed in to Social in chimimouryou on this computer, it pairs the add-on for you.
  • With a code: in chimimouryou, go to Settings → Discord and make a pairing code. Then in Anki, choose Tools → Pair chimimouryou Discord… and enter it. A code works once and expires after 10 minutes.

You can unpair in the same dialog, or remove the device from chimimouryou's settings.

Privacy

  • If you don't pair it, the add-on makes no internet requests. It only listens on 127.0.0.1 and accepts requests from chimimouryou's own pages.
  • Once paired, it only fetches your current status from the hub. Its key can't read anything else, and it never uploads what this computer is reading.
  • Discord clears your status when Anki quits.

Config

Tools → Add-ons → chimimouryou Discord companion → Config

  • port: the local port (default 41918). If you change it, change it in chimimouryou too.
  • extraOrigins: the addresses of your own chimimouryou servers, e.g. ["https://books.example.net"]
  • hub: the social hub to use. Change it only if you run your own.

FAQ

My buttons don't show up. Discord hides the buttons on your own status. Friends who look at your profile can see them and click them.

Nothing shows up. Make sure the Discord desktop app is running (the browser version won't work) and that Discord's Settings → Activity Privacy → Share your detected activities with others is on. Discord also only accepts about one status update every 15 seconds.

Source and licence

Source code, issues and protocol: github.com/blankiekun/chimimouryou. BSD 3-Clause.

README

chimimouryou

A Japanese e-book reader built for learners, in your browser or on your own server. It is a fork of ッツ Ebook Reader: lookups with Yomitan or a built-in dictionary, furigana, difficulty estimates, reading statistics and Anki mining. The reader itself, and its Yomitan support, are upstream's.

Try it in your browser

Open chimireader.github.io and add an EPUB. Nothing to install and no account: books stay in your browser, or sync through your Google Drive or a folder. Settings → Dictionary installs JMdict in one tap, and desktop browsers can download the furigana and difficulty tools. Coming from ッツ Reader? Export a Zip File there and use Import Backup here. Phones and Yomitan: docs/LEARNING.md. On Android there is also an APK of it on each release (apps/android).

Or host it for your Calibre library

Point it at a Calibre library and everyone in the house reads from it, with accounts, synced progress and highlights, Anki mining and server-side difficulty estimates.

Reading 薬屋のひとりごと in vertical text, with two highlights and the selection toolbar

Books, manga and ONScripter visual novels from one library; highlights, search, audiobooks, AI helpers and Anki mining in the reader; difficulty estimates and reading statistics for learners. See Features. On an e-reader, the KOReader plugin browses the library and keeps your place and reading time in step with the server.

Screenshots show books from the maintainer's own library; the titles belong to their publishers.

Setup

You need Docker with the Compose plugin (Docker Desktop on Windows and macOS). Prebuilt images exist for amd64 and arm64.

1. Get it

git clone https://github.com/blankiekun/chimimouryou && cd chimimouryou
cp .env.example .env

In .env, set:

IMAGE_PREFIX=ghcr.io/blankiekun/chimimouryou   # prebuilt images, nothing to compile
IMAGE_TAG=latest
COMPOSE_PROFILES=import                        # add books from the app
PUID=1000                                      # your `id -u` and `id -g` (Linux)
PGID=1000

For learners, COMPOSE_PROFILES=import,difficulty,mokuro also runs the difficulty estimates and manga text (see server size).

2. Choose a library

  • An existing Calibre library: point at the folder that holds metadata.db (quote paths with spaces):

    LIBRARY_PATH="/home/you/Calibre Library"
    

    The server adds a cover.jpg to book folders without one, and books you add in the app go into Calibre. Back the library up first, and close Calibre while you add books from the app.

  • A new, empty library: set LIBRARY_PATH=./library and create the empty folder (mkdir library). With the import profile on, the import service makes a Calibre library there on its first start (only in a completely empty folder you own; its log says so). After you sign in, add books with Import in the library or by dropping files on it. The library is a normal Calibre library, so Calibre can open it later.

3. Choose how you reach it

  • Just this computer (a laptop or desktop): sign in over plain HTTP. The port is only open to this machine, so passwords never cross a network.

    HTTP_PORT=127.0.0.1:8080
    ALLOW_HTTP_ACCOUNTS=1
    

    Open http://localhost:8080.

  • A server (home server, VPS) for several people or devices: keep ALLOW_HTTP_ACCOUNTS=0 and put HTTPS in front. With Caddy on the same machine (it gets the certificate itself), set

    HTTP_PORT=127.0.0.1:8080
    REAL_IP_FROM=172.16.0.0/12      # Docker's network: Caddy's requests come from there
    

    and add this to the Caddyfile:

    books.example.com {
      reverse_proxy 127.0.0.1:8080
    }
    

    Open https://books.example.com. No domain? tailscale serve --bg 8080 gives an HTTPS address inside your tailnet. Other proxies: docs/INSTALL.md.

4. Start it and sign in

docker compose up -d
docker compose exec account ebook-account initial-admin

The second command shows the password of the first account, admin. Sign in (person icon at the top right), and change the password in Settings → Account. There is no sign-up: add the other readers in Settings → Account → Admin panel. The library fills in about a minute after the first start (longer for a big library, while covers are extracted).

Update with git pull && docker compose pull && docker compose up -d. The install guide has the rest: trusted networks (reading without signing in), permissions, backups, difficulty estimates and building the images yourself.

Documentation

How you read with it

  1. Look words up with Yomitan (or another dictionary extension) while you read: in books, in manga with mokuro text laid over the pages, and in visual novels with the game's text laid over the screen.
  2. Make Anki cards with Yomitan as usual. With Settings → Anki on, the reader fills the new card's empty audio and picture fields: the sentence's audio from the audiobook (or the AI voice) in books, and a screenshot and the line's voice in visual novels.
  3. Pick the next book by difficulty. Every book can have a difficulty estimate and the share of its kanji you have already met; the Store filters and sorts by difficulty and length, so the next book can be just a little harder than the last.

Features

For learners

  • Difficulty estimates with Jiten's features and a model trained on jiten.moe's scores, computed on your server: a score with its likely range, the vocabulary needed for 95% coverage, and how many of the book's kanji you have already met.
  • Statistics: characters, time and speed per day and per book, streaks, reading goals (upstream's, synced per account) and an estimate of the words known over time.
  • Anki mining: cards made with Yomitan get the sentence's audio from the audiobook (or the AI voice) and, in visual novels, a screenshot and the line's voice.
  • Manga text: page text from mokuro, made on the server or uploaded, laid over the pages for Yomitan. Without a server, .mokuro files work too, or a desktop browser makes the text itself.

Library

The Calibre library is the bookshelf. Home has your reading at a glance: characters read today and this week, reading streaks, speed and the number of words met and known, then "Continue reading" and "My books". Store is the whole library, as books or as series, with filters (type, reading status, last read, difficulty, length, tags) and sorting.

Home: today's reading, the week's totals and words known, and Continue reading

Store Series
The Store with filters and sorting The Store as series
  • Covers are extracted from EPUBs that have none in Calibre; series come from Calibre or are guessed from volume numbers in titles, and readers with the series permission can group books into series themselves.
  • Adding a file (Import, or dropping it on the library) puts it into Calibre.
  • Books open straight from the server and stay cached in the browser. Books on Home are downloaded in the background, so they can be read offline; progress made offline uploads when the server is back.

Clicking a cover opens the book's page: length in characters and the reading time at your speed, progress, the difficulty estimate, Calibre's metadata and the rest of the series. "Find details" fills in a description, genres and a cover from AniList, VNDB or Jiten.

A book's page: difficulty estimate, words, length and series

Reading

The reader is upstream's: EPUB, HTMLZ and plain text, continuous or paginated, vertical or horizontal, made for Yomitan and other dictionary extensions. Progress, statistics and settings sync across devices with your account, with separate reader styles for phones and larger screens.

  • Highlights and notes in four colours: select text and pick a colour. The reader panel's Highlights tab lists them by chapter, to jump to, edit, copy or download as Markdown.
  • Search the book (Ctrl+F), ignoring furigana, with optional kana-insensitive and regular-expression matching.
  • Listen: an audiobook with SRT/VTT subtitles follows the text and highlights the line being read. No subtitles? Whisper can make them in the browser. Audiobooks can also come from an Audiobookshelf server (plugin).
Search Highlights
Search results for 猫猫 in the reader panel The reader panel's Highlights tab

Desktop keys (physical positions, the same on any layout): PageDown/PageUp pages, n/m chapters, b/r bookmark and return, Space auto-scroll (a/d faster/slower), p the reading tracker. Upstream's README covers every control, the tracker and import/export.

Manga and visual novels

  • Manga (CBZ, or ZIPs of images) open in a page-turning reader: right to left, left to right or a vertical strip.
  • Visual novels for ONScripter run in the browser on CONscripter, with the text laid over the game for Yomitan (backlogs and choices too), an optional backlog beside it, and the text counted in progress, statistics and kanji met. Games are ZIPs or unpacked folders on the server (VN_PATH); saves sync across devices and big games can be kept offline. Games for other engines can often be converted with conscripter-convert.

A two-page spread of MONSTER in the manga reader

AI helpers (plugin)

Off until you turn on Settings → General → Plugins → AI tools, and they use your own keys (OpenRouter for text, ElevenLabs for the voice), called straight from the browser:

  • Ask AI about a selection: explain, translate, nuance, or your own presets, with follow-up questions, in English or Japanese.
  • Story so far: a spoiler-free recap of everything before your position, for coming back to a book after a break.
  • Lorebook: characters, places and terms collected as you read, exportable as SillyTavern World Info and handed on to the next book of a series.
  • AI voice: reads aloud from your position, highlighting each phrase.

Ask AI on a selection, before an OpenRouter key is set

Accounts, themes and the admin panel

  • Accounts with per-account permissions (import, series, difficulty); there is no sign-up, admins add readers.
  • Themes colour the whole app, follow the system's light and dark mode, and can be written or imported (themes.md).
  • Admin panel: accounts and permissions, updates to the latest release or main (on servers set up with scripts/deploy.sh), the visual novel engine, catalog and series tools, and difficulty jobs.
Themes Admin panel Phone
Settings → Themes Admin panel → Tools Home on a phone

Good to know

  • EPUBs that render wrongly (e.g. unclosed links swallowing the text) may import correctly with Settings → Data → "Epub Import Fixes" set to standard or extended.
  • Progress counts Japanese characters only, without Latin letters or punctuation.
  • Books from the Calibre library come back from the server, but other browser data (settings without an account, books imported only into the browser) lives in the browser's storage, which the browser may clear when the disk fills up. Settings → Data shows whether storage is persistent.

License

chimimouryou is licensed under the GNU General Public License v3.0 or later. Files whose header says @license BSD-3-Clause (upstream's, and this fork's from before the switch) are also available under the BSD 3-Clause terms in LICENSE-BSD; the work as a whole is GPL-3.0-or-later.

Credits

ッツ Ebook Reader by ッツ Reader Authors (BSD 3-Clause, see LICENSE-BSD), from which this fork derives; Jiten for the difficulty features and deconjugation rules (Apache-2.0, see NOTICE). The level check's and word test's words and ranks (apps/web/src/lib/data/difficulty/placement-items.json) are sampled from Jiten's frequency list (CC BY-SA 4.0); its made-up words were checked against JMdict, JMnedict, Japanese Wiktionary and further dictionaries. The hard word test's meanings (apps/web/src/lib/data/difficulty/placement-hard-items.json) are short excerpts from Japanese Wiktionary by its contributors (CC BY-SA 4.0), via wiktionary-to-yomitan; its wrong readings use KANJIDIC2 (EDRDG, CC BY-SA 4.0) through yurigana. Readings in context and the "Known" furigana style come from yurigana, whose reading model is trained on public-domain works from Aozora Bunko and on sentences with reviewed readings from Tatoeba (CC BY 2.0 FR, by Tatoeba's contributors); neither is redistributed here. The built-in dictionary runs Yomitan's lookup engine by the Yomitan Authors (GPL-3.0-or-later, see its LICENSE), with kanji variants from kanji-processor (MIT). Its one-tap dictionary is JMdict by the Electronic Dictionary Research and Development Group (CC BY-SA 4.0), packed for Yomitan by jmdict-yomitan and downloaded when the site is built (it isn't in the repository). Manga text made in the browser downloads, from Hugging Face, ogkalu's comic text detector and manga-ocr by kha-white (in onnx-community's ONNX export), all Apache-2.0; audiobook subtitles download OpenAI's Whisper (MIT, ONNX exports by onnx-community); none is redistributed here. chimimouryou is not affiliated with or endorsed by any of these projects.