13 Grammar Dictionaries in one

- Download the dictionary ZIP
- In Yomitan settings, go to Dictionaries → Import
- Select the downloaded ZIP
You can also browse the grammar library or use the English website. Every dictionary entry links to its page, with all contributing explanations and examples. Search by grammar, reading or meaning, and filter by JLPT level or source.
The English Yomitan edition is separately installable. Monolingual explanations and untranslated examples are translated with GPT-6 Luna and labelled as translations. Source-authored English is retained. The English website includes the original source text for reference.
Every grammar point shows a compact card with progressive disclosure — click to expand per-source details, extra examples, and provenance.
| Source | Name | Language | Description |
|---|---|---|---|
| DoJG | 日本語文法辞典(全集) | EN | Dictionary of Japanese Grammar (Basic/Intermediate/Advanced) |
| HJGP | 日本語文型辞典 | JA | A Handbook of Japanese Grammar Patterns — monolingual |
| HJGP EN | 日本語文型辞典 英語版 | EN | A Handbook of Japanese Grammar Patterns — English edition |
| NINJAL | 日本語文型データベース | JA | National Institute for Japanese Language and Linguistics grammar pattern database |
| 日本語NET | JLPT文法解説まとめ | JA | JLPT grammar explanations from nihongokyoshi-net.com |
| 絵でわかる | 絵でわかる日本語 | JA | Japanese grammar explained through illustrations |
| Donna Toki | どんなときどう使う 日本語表現文型辞典 | EN/JA | "When and How to Use" expression pattern dictionary |
| 日本語教師 | 毎日のんびり日本語教師 | JA/ZH | Grammar explanations for Japanese teachers |
| Bunpro | Bunpro Grammar Reference | EN | SRS-based grammar reference |
| 文法 | 文法 | JA | Personal grammar Anki deck |
| IMABI | IMABI | EN | Comprehensive Japanese grammar lessons (modern + classical) |
| Yokubi | Yokubi | EN | The Common Grammar Guide (yoku.bi) |
| AIUEO | AIUEO JLPT Grammar | EN/JA | 761 grammar records with 3,805 bilingual examples from the AIUEO Anki deck |
- Single lookup: one dictionary, one card per grammar point — not 13 separate popups
- Merged entries: when multiple sources describe the same grammar point, their contributions are merged into one card with per-source attribution
- Deduplication: the keymap stage aligns entries across sources so you don't see the same point repeated
- Progressive disclosure: compact by default, expand any source's details on demand
python3 -m venv .venv
source .venv/bin/activate
pip install . pytest
make all
The pipeline stages:
- extract — read each source's locked data into normalized
GrammarPointrecords - keymap — align entries across sources (which rows are the same grammar point?)
- merge — combine aligned entries into a unified dataset
- build — render the Yomitan dictionary ZIP
- validate — verify against Yomitan's JSON schemas
The committed publication snapshot makes both websites and dictionary downloads reproducible without local source decks, network scraping, or model credentials:
make site
python3 -m http.server 8000 --directory build/siteOpen http://localhost:8000/ or http://localhost:8000/en/.
GitHub Actions builds this snapshot and deploys it to GitHub Pages on main.
See the publishing workflow for updating the corpus and translations.
After acquiring all locked sources and running make all, update the publication:
make translate-english # authenticated Codex CLI; explicitly uses gpt-6-luna
make publish-data # refuses missing sources or translations
make siteTranslation results are cached by source-text hash under data/translations/.
The original corpus stays unchanged. A changed source text requires a fresh
translation; an incomplete English edition fails the build.
- Place source data in
data/sources/<name>/with aSOURCE.lock.json - Write an extractor in
src/bugd/sources/<name>.py(see existing extractors for patterns) - Register it with
@register_extractor - Add to
SOURCE_PRECEDENCEinkeymap.pyand_SOURCE_EXPLANATION_LANGinbanks.py - Run
make all
Dictionary content retains its original licensing from each source. The build pipeline code is MIT.