Skip to content
Kotoshu Kotoshu 言修

Playground

Nothing installs. It checks.

The real engine — the same Rust core the gem and the SDKs use — compiled to WebAssembly, fetched once from a CDN, running on this page. Your text never leaves the browser.

Against your own instance instead? The server playground wraps a live kotoshu-server with document checking and language detection.

辞書 tier: dictionary

loading engine…

Engine @kotoshu/wasm 1.1.0 · dictionaries from the dictionaries repo, commit-pinned · both via jsDelivr, cached by your browser. English, German, and Portuguese load as one language pack — dictionary, semantic tier, and buckets in a single fetch; every other language loads per-artifact from the models registry mirror.

注記 specimen notes

tier

Dictionary engine, semantic opt-in n. — suggestions from edit distance, phonetics, keyboard proximity, and n-grams; the semantic switch reranks them by context fit; detect proposes a language for the text without switching silently.

Since @kotoshu/wasm 0.4.0 the engine itself sweeps with the Damerau operations — an adjacent swap costs one step, so Teh suggests The at rank one — and generates candidates from the model: loadModel plus rerank plus semanticSuggest, with registry v1.3.0 mirroring every mini tier to a host browsers may fetch. The switch above loads this language tier, about 3 MB, and reranks inside the worker. The server playground still runs the heavier fluency tier and the full pipeline.

langs

Thirty-three languages n. — every Hunspell dictionary the pinned CDN commit carries under ~5 MB, from Български to Tiếng Việt, Norsk bokmål included via the flat layout.

Over the budget and staying gem-only for now: el, ko, tr, uk, he (5.8–19 MB each). Japanese and Chinese are absent at any size — CJK checking rides on the gem's tokenizer, not on Hunspell files. The biggest entries carry their size in the list. See the language matrix.

speed

Underlines as you type n. — word lookups are instant; the engine runs in a Web Worker so typing never blocks.

Ranked suggestions sweep the dictionary, so they appear on click — the status line counts the pane sweeps done-of-total and the popover counts elapsed time, so the wait is never a blank. Usually under a second for English, slower for very long or garbled words.