{
  "markdown": "# Aligner — word-by-word translation visualizer\n\n**[aligner.tinygods.dev](https://aligner.tinygods.dev)**\n\nWord Aligner is a free web tool that shows **which word matches which** across stacked lines of text. Type or paste a sentence and its translation, click a word and then its match on the line above or below, and curved connectors draw the alignment between them. Add extra rows for **glosses** or **IPA**, then **export** the diagram or **share** it with a link.\n\nNo accounts, no machine translation — you stay in control of every link. Great for lessons, social posts, grammar notes, and conlang documentation.\n\n![Linking words between “Hello world” and its French translation](bitext/static/examples/action.gif)\n\n## What it's for\n\n- **Language learners** — see exactly why a translation says what it does: which source word became which target word, what gets dropped, and where word order changes.\n- **Teachers** — build handouts, slides, and flashcards; export a clean PNG or SVG and drop it into a lesson without retyping anything.\n- **Linguists** — produce Leipzig-style interlinear glosses with morpheme alignment, case/agreement tags, and free translations.\n- **Conlangers** — show how a constructed language maps onto English, with custom script fonts, gloss rows, and IPA.\n\n## What it does\n\n- **Multi-line alignment** — stack as many rows as you need (source, translation, gloss, IPA); links connect vertically adjacent lines.\n- **Manual word linking** — click a word, then its match; supports one-to-many and many-to-one links and freely crossing connectors for reordered translations.\n- **Interlinear glosses & IPA** — add annotation tiers above or below any line.\n- **Right-to-left scripts** — Hebrew, Arabic, and mixed LTR/RTL layouts.\n- **Vertical writing systems** — stand the whole diagram up as columns for Japanese tategaki, Chinese, or traditional Mongolian; characters stack or the line rotates, chosen per line, so a horizontal translation stays readable beside it.\n- **Tokenization control** — choose how text splits into word boxes (split characters, a join marker for fixed expressions, optional punctuation handling).\n- **Per-line typography** — font, size, spacing, and direction per line; custom and Google Fonts.\n- **Exports** — PNG, SVG, PDF, and a self-contained HTML file; exports match the preview, including custom-font shaping.\n- **Shareable URLs** — the whole alignment (text, links, and visual settings) is encoded in a `?data=` link.\n\n## Examples\n\nBrowse ready-made examples — bilingual pairs, Turkish interlinear with IPA, RTL scripts, vertical Japanese and traditional Mongolian, Tagalog compounds, Japanese–Chinese–English word order, and more interlinear glosses — at **[aligner.tinygods.dev/examples](https://aligner.tinygods.dev/examples)**. Open any one in the editor to adapt it.\n\n![Turkish interlinear preview with glosses, IPA, and connectors](bitext/static/screenshots/preview-turkish-example.png)\n\n![Conlang example with a custom script font and interlinear glosses](bitext/static/examples/conlang_gloss.png)\n\n## How it works\n\nEdit your lines in the line editor, then link words in the preview.\n\n![Aligner line editor with stacked lines and word-splitting summary](bitext/static/screenshots/line-editor.png)\n\nTune colors, tokenization, and fonts in settings, then export or share.\n\n![Export options: PNG, SVG, PDF, and HTML](bitext/static/screenshots/export-card.png)\n\n## Word alignment vs. interlinear vs. parallel text\n\n- **Interlinear translation** places a gloss directly under each source word — compact, but it hides reordering. Aligner keeps both sentences on their own line and draws connectors, so reorderings, splits, and merges stay obvious.\n- **Parallel text** is side-by-side bilingual reading for long-form study. Aligner focuses on one sentence pair at a time with explicit connectors showing which tokens correspond.\n\n## API\n\nWord Aligner has a free HTTP API for generating alignment links programmatically.\n\n```\nPOST https://aligner.tinygods.dev/api/align\nContent-Type: application/json\n\n{\n  \"lines\": [\"Hello world\", \"Bonjour le monde\"],\n  \"alignments\": [[0, 0, 1, 0], [0, 1, 1, 2]]\n}\n```\n\nReturns `{ \"url\": \"https://aligner.tinygods.dev/?data=...\" }`.\n\nSupports per-line options (font, size, RTL), global visual settings (palette, line style, background), pair-level gap control, and multi-line stacks with selective connectors.\n\n- **API docs:** [aligner.tinygods.dev/api](https://aligner.tinygods.dev/api)\n- **OpenAPI schema:** [aligner.tinygods.dev/api/align/openapi.json](https://aligner.tinygods.dev/api/align/openapi.json)\n\n### Using Word Aligner as an AI agent tool\n\nThe [`word-aligner-skill/`](word-aligner-skill/) directory is a ready-to-install skill that teaches AI assistants (Claude, ChatGPT, etc.) how to use the API. Once installed, it enables flows like:\n\n> \"Translate 'я хочу спать' into English and show me the word alignment.\"\n\nThe agent translates, calls the API, and returns a shareable link.\n\n- **For Claude:** point your Claude project at this repository or add the contents of `word-aligner-skill/SKILL.md` as a custom instruction.\n- **For ChatGPT:** zip `word-aligner-skill/` and upload it as a custom Skill.\n\nInstall instructions and a downloadable archive are also on the site: [aligner.tinygods.dev/skill](https://aligner.tinygods.dev/skill).\n\n### MCP server\n\nThere is also an MCP server at `https://aligner.tinygods.dev/mcp` that exposes a single `create_word_alignment` tool. It returns a shareable link plus a preview image, and runs inside the same app over Streamable HTTP with no auth. Connect it in Claude:\n\n```bash\nclaude mcp add --transport http word-aligner https://aligner.tinygods.dev/mcp\n```\n\nSee [docs/mcp-server.md](docs/mcp-server.md) for ChatGPT Developer Mode setup and the tool schema.\n\n## Learn more\n\n- **App:** [aligner.tinygods.dev](https://aligner.tinygods.dev)\n- **About / documentation:** [aligner.tinygods.dev/about](https://aligner.tinygods.dev/about)\n- **Privacy:** [aligner.tinygods.dev/privacy](https://aligner.tinygods.dev/privacy)\n\nCreated by Dani Polani. See other [tools for linguistics and conlanging](https://danipolani.github.io/en/blog/tools/).\n",
  "bytes": 6185,
  "sha": "a2db68d65f12d574d20c81614cefe8ff18f6ae13b4b53b4fb9f054c7043f40aa",
  "repo_slug": "tinygodsdev/bitext-word-alignment",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_tinygodsdev_word_aligner_56e46274/readme"
}