781 of 796 strings. Generated by AI, unreviewed, marked Beta.
The thing this catalogue had to avoid
Ukrainian and Russian share a script and share a plural rule — one, few, many, with 11 counting as many and 21 counting as one. They share almost nothing else that matters in a mail client:
Ukrainian
Russian
Inbox
Вхідні
Входящие
Deleted Items
Кошик
Корзина
Conversation
Листування
Цепочка
Folder
Тека
Папка
Message
Лист
Письмо
A Ukrainian catalogue produced by adapting the Russian one would pass every structural check in this repo and still be the wrong language — and a Ukrainian reader would notice in the first sentence and would be right to resent it. The vocabulary here was chosen against what Ukrainian software says, not against the neighbouring file.
Two words worth naming: «тека» rather than «папка» for folder, the form Ukrainian software settled on; and «мітка» for label rather than Russian's «ярлык», which in Ukrainian means a shortcut and would be a small false friend on every screen.
Plurals
Tested against the shipped catalogue at 1, 2, 4, 5, 11, 21 and 0 — including the two cases English's two-form assumption gets wrong (11 is many despite ending in 1; 21 is one again). Plus a check that every counted string carries all four categories, since a missing few falls back to other silently and is grammatical often enough to go unnoticed.
One thing deliberately left out
A cross-check asserting that Ukrainian and Russian are actually different files is worth having, but can't live here: Russian is still an open PR (#155), so ru.ts doesn't exist on this branch. It belongs in a follow-up once both have landed — and I'll add it then rather than leave the claim untested.
Checks
461 tests, typecheck, build clean. npm run i18n:check reports uk at 98% with no stale keys. 61 kB chunk.
Still Beta. First things I'd want a Ukrainian speaker to check: «Листування» for conversation, and whether «Вивантажити»/«Завантажити» for upload/download read the right way round.
**781 of 796 strings.** Generated by AI, unreviewed, marked **Beta**.
## The thing this catalogue had to avoid
Ukrainian and Russian share a script and share a plural rule — `one`, `few`, `many`, with 11 counting as `many` and 21 counting as `one`. They share almost nothing else that matters in a mail client:
| | Ukrainian | Russian |
|---|---|---|
| Inbox | Вхідні | Входящие |
| Deleted Items | Кошик | Корзина |
| Conversation | Листування | Цепочка |
| Folder | Тека | Папка |
| Message | Лист | Письмо |
**A Ukrainian catalogue produced by adapting the Russian one would pass every structural check in this repo and still be the wrong language** — and a Ukrainian reader would notice in the first sentence and would be right to resent it. The vocabulary here was chosen against what Ukrainian software says, not against the neighbouring file.
Two words worth naming: **«тека»** rather than «папка» for folder, the form Ukrainian software settled on; and **«мітка»** for label rather than Russian's «ярлык», which in Ukrainian means a *shortcut* and would be a small false friend on every screen.
## Plurals
Tested against the shipped catalogue at 1, 2, 4, 5, 11, 21 and 0 — including the two cases English's two-form assumption gets wrong (11 is `many` despite ending in 1; 21 is `one` again). Plus a check that every counted string carries all four categories, since a missing `few` falls back to `other` silently and is grammatical often enough to go unnoticed.
## One thing deliberately left out
A cross-check asserting that Ukrainian and Russian are actually *different files* is worth having, but can't live here: Russian is still an open PR (#155), so `ru.ts` doesn't exist on this branch. It belongs in a follow-up once both have landed — and I'll add it then rather than leave the claim untested.
## Checks
461 tests, typecheck, build clean. `npm run i18n:check` reports uk at 98% with no stale keys. 61 kB chunk.
Still Beta. First things I'd want a Ukrainian speaker to check: «Листування» for conversation, and whether «Вивантажити»/«Завантажити» for upload/download read the right way round.
**Merged** 2026-08-31 as coffey-labs/ihasmail@5ee9b1f1b16c
<sub>Rebuilt from: git history, session transcript.</sub>
This repo is archived. You cannot comment on issues.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
781 of 796 strings. Generated by AI, unreviewed, marked Beta.
The thing this catalogue had to avoid
Ukrainian and Russian share a script and share a plural rule —
one,few,many, with 11 counting asmanyand 21 counting asone. They share almost nothing else that matters in a mail client:A Ukrainian catalogue produced by adapting the Russian one would pass every structural check in this repo and still be the wrong language — and a Ukrainian reader would notice in the first sentence and would be right to resent it. The vocabulary here was chosen against what Ukrainian software says, not against the neighbouring file.
Two words worth naming: «тека» rather than «папка» for folder, the form Ukrainian software settled on; and «мітка» for label rather than Russian's «ярлык», which in Ukrainian means a shortcut and would be a small false friend on every screen.
Plurals
Tested against the shipped catalogue at 1, 2, 4, 5, 11, 21 and 0 — including the two cases English's two-form assumption gets wrong (11 is
manydespite ending in 1; 21 isoneagain). Plus a check that every counted string carries all four categories, since a missingfewfalls back toothersilently and is grammatical often enough to go unnoticed.One thing deliberately left out
A cross-check asserting that Ukrainian and Russian are actually different files is worth having, but can't live here: Russian is still an open PR (#155), so
ru.tsdoesn't exist on this branch. It belongs in a follow-up once both have landed — and I'll add it then rather than leave the claim untested.Checks
461 tests, typecheck, build clean.
npm run i18n:checkreports uk at 98% with no stale keys. 61 kB chunk.Still Beta. First things I'd want a Ukrainian speaker to check: «Листування» for conversation, and whether «Вивантажити»/«Завантажити» for upload/download read the right way round.
Merged 2026-08-31 as coffey-labs/ihasmail@5ee9b1f1b1
Rebuilt from: git history, session transcript.