Paste a Japanese sentence and see how it holds together. It’s broken into bunsetsu — the phrase-sized chunks a Japanese sentence is built from, each usually a noun, verb or adjective plus the particle that marks what it’s doing — by the GiNZA library.
Those chunks are then arranged into a 係り受け (kakariuke) graph: each one drawn flowing into the chunk it modifies. Kakariuke is the Japanese name for what linguistics calls a dependency — the same idea, applied to these chunks rather than to single words.
Reading the diagram. Chunks run left to right in reading order, so reading across any row is reading the original Japanese. They’re stacked by how far each sits from the final predicate, which anchors the bottom right — so every line flows downward into the chunk it modifies, and lines heading for the same chunk merge into one trunk. Colour marks the grammatical role each chunk was judged to play; hover one to see which. The sentence also runs along a strip pinned to the bottom, tracking the graph’s pan and zoom, so zooming into one corner of a long sentence still shows you where you are.
Moving around. Scrolling moves the graph in both directions — two fingers on a trackpad or touchscreen, a wheel, or shift-wheel for sideways. Zoom needs a modifier: hold ⌘ Cmd (Ctrl on Windows) and scroll, or just pinch. The framing button refits the whole sentence if you lose your place, and where you panned and zoomed to is remembered per sentence.
The translation is masked until you ask for it. Tap a chunk to uncover its translation, or the bar at the bottom to uncover the whole sentence — so you can try the Japanese first and check yourself after. Chunk translations are context-aware: each is translated as it functions in this sentence, rather than as a word on its own.
Paste a whole paragraph if you like. Every sentence in it is parsed and translated together, in a single request. The graph shows one sentence at a time; the rest are waiting in your sentence history , their translations already done.
Using it from other apps. Reading happens elsewhere — in a browser, a book app, a message — so the useful shape of this tool is a thing you send a sentence to.
Android. Open the browser menu and choose Add to Home screen. Once installed, Bunsetsu appears in the share sheet: select any Japanese, share it here, and the graph opens. Nothing else to set up.
Windows. The same, installed from the icon at the right-hand end of the address bar in Edge or Chrome; it then joins the Windows share sheet.
iPhone, iPad and Mac. Apple doesn’t support the share-sheet standard the two above use, so it takes a Shortcut instead. There is a ready-made one: Open in Bunsetsu.app. Your device shows you every step it contains before you accept it, and it is signed, so there is no setting to go and turn on first. To build your own instead, in the Shortcuts app: make a new shortcut, turn on Show in Share Sheet and let it accept Text; add URL Encode on the shortcut’s input; add a Text action reading <this site’s address>/?s= followed by that encoded text; finish with Open URLs. Name it and it appears wherever you select Japanese. On a Mac, also tick Use as Quick Action → Services Menu to get it on selected text there. Action names drift a little between versions, so take these as the shape of it rather than exact labels.
Any desktop browser. Drag 係り受け to your bookmarks bar. Select Japanese on any page, click it, and the sentence opens here. No installing anything, and it works the same on Windows, Mac and Linux.
Translations need a key of your own. The chunking, the structure and the furigana are all worked out here and ask nothing of you. Translating the Japanese — into English, or any of twenty other languages — is the part that comes from Google Gemini, which needs an API key, and this site has none to lend — so your use of Gemini is between you and Google rather than routed through somebody else’s account. The key button walks you through making one; the free tier is generous, and needs no billing setup. Until then the graph works as it does here; only the translation waits.
What’s kept, and where. Your sentence history, typeface, key and viewport are stored in this browser. This app doesn’t store your sentences on the server — there’s no database, and the sentence is stripped out of the request logs.
Gemini is the exception, once you have a key: on the free tier Google uses what you send and what comes back to improve its products, and says human reviewers may read it. Two exemptions — a key with billing enabled, and, by Google’s own terms, anyone in the UK, EEA or Switzerland, for whom the paid-tier data terms cover unpaid use too. Outside those, don’t paste anything you’d mind a stranger reading.
How it works. Whatever you paste goes through GiNZA’s ja_ginza spaCy pipeline in one pass, which yields the bunsetsu spans and Universal Dependencies relations the graph is built from. Each chunk’s role is inferred from its trailing particle and the dependency label of its head word — a good approximation for reading, but it gets it wrong sometimes. Furigana comes from the same parse: Sudachi gives a katakana reading per token, aligned against the surface text so only the kanji get annotated (借り reads カリ, but 借 alone takes the か), and a reading that can’t be aligned is left off rather than guessed at. A sentence can also be opened straight from a URL with ?s=, which is how the share-sheet shortcut works.
Credits. The shape of the diagram is inspired by The Flow of Japanese, Part 2 on Barely Lingual, which makes the case for reading a sentence as chunks flowing into one another rather than as a tree to be untangled. Vibe-coded by Claude, steered by a software engineer who is also a student of Japanese.
Built on other people’s open source, without which none of it would exist:
You can also pinch to zoom, or hold ⌘ Cmd (Ctrl on Windows) and scroll.
Translating the Japanese — the sentence, and each chunk in it — runs on Google Gemini and need an API key of your own. This site has none to lend — which also means your use of Gemini is between you and Google, rather than routed through somebody else’s account. Everything else works without a key: the chunking, the structure, the furigana and the graph are all worked out here.
While there is no key, the key button carries a reminder, since a translation that simply isn’t there looks much like one that failed.
The list shows the AI models available to your API key. Their usage and limits can be seen in AI Studio. The Lite models are marked recommended because that tier carries much the largest free daily allowance and translates a sentence perfectly well; a plain Flash model can be capped at a couple of dozen requests a day.
Your key is kept in this browser, in localStorage, and sent in a request header — never in a URL — to this site’s server, which passes it to Google and keeps no copy. Forget removes it.
On Gemini’s free tier, Google uses what you send to improve its products and says human reviewers may read it. Two exemptions: a key with billing enabled, and — by Google’s own terms — anyone in the UK, EEA or Switzerland, for whom the paid-tier data terms cover unpaid use too. Outside those, don’t paste anything you’d mind a stranger reading.