A Ukrainian word game, and how we built its dictionary
· 7 min read · Tyamka team
How the Ukrainian word list for Word Grid was put together, where the words come from and under which licence, and why only nominative singular nouns count.
Word Grid is a word game you can play in Ukrainian or in English. You join neighbouring letters in a grid into words before the time runs out. The grid, the clock and the scoring are the same in both languages, but which words are accepted differs, and the Ukrainian word list turned out to be the harder half of the job, and it shapes what counts as a word. To play, open the word grid game online and switch the site to Ukrainian. The game uses the list of the interface language.
The game in one paragraph
A grid of letters, 3×3 on the first levels and up to 5×5 on the last. You drag across letters that touch, sideways or diagonally, and each letter counts once per word. On a keyboard you can type the word and press Enter. A word that is in the list counts, adds time to the clock and earns points, and longer words earn more of both. A word that is not in the list costs one of three lives, unless it is on the block list of offensive words. So the list is not background detail. It decides every move.
Why the licence came first
A word list for a game has to be free to ship inside a paid product, and it must not force the rest of the app under its own licence. For English that was easy. We used SCOWL by Kevin Atkinson, whose permission notice allows use for any purpose as long as the notice travels with the list.
For Ukrainian the obvious source is dict_uk, the large open dictionary of Ukrainian word forms led by Andriy Rysin. Its dictionary data is published under Creative Commons Attribution-NonCommercial-ShareAlike, which rules out a game with paid features. The spell-checker versions built from it use the Mozilla Public License 1.1, which would require us to publish our modified list under the same licence.
The project's README notes that derivative projects have different licences. One of them, the search version of its part-of-speech dictionary, published as morfologik-ukrainian-search 4.9.1, is released under the Apache License 2.0. That licence allows commercial use and changes, as long as the licence text and notices go with the work and the changes are marked. This is the source of our list. The licence text and a notice naming the authors and our changes are stored next to the list in the game's code.
We are not lawyers, and one question is still open on our side. The data behind the search version was written by many contributors, and we have not yet asked the author to confirm that this version can be used in a paid game.
From 3.5 million lines to one rule
The search dictionary lists every form of every word with its lemma and grammatical tags. Exported to text, that came to 3,485,758 lines. A Ukrainian noun changes across seven cases and two numbers, fourteen slots in all, though some of them share a spelling.
Accepting all of them would make the game hard to reason about. You would never know whether an odd ending you spotted in the grid counts. So Ukrainian Word Grid accepts one clear kind of word, a noun in the nominative singular, the form a dictionary lists, like кіт (cat) or море (sea). Nouns that have no singular, like двері (door), count in the form they have.
In practice the filter keeps a word when:
- it is 3 to 8 letters long, made of Ukrainian lowercase letters;
- it is tagged as a noun and not as a pronoun;
- its form is the same as its lemma, which drops every inflected form and, as a side effect, every proper name, since those are stored with a capital letter.
The result is 34,706 nouns.
The English list works differently. It accepts any form of a word, so plurals and verb tenses count, as in most English word games. Whether to keep the two languages this different is a question we have left open.
Common words and rare ones
Not all 34,706 words are equal. The game needs to know which words most players would think of, because it builds every grid around them. For that we counted how often each word appears in the Ukrainian sentences of Mozilla Common Voice, a collection of sentences that volunteers read aloud, most of them released into the public domain under CC0. The sentences add up to 1.47 million words. A noun that appears there at least three times is marked as common, and 3,737 nouns made the cut.
Only the counts are used. No sentence from Common Voice ends up in the game.
Common words matter in two ways. When the game builds a grid, it places one common word of 6 to 8 letters along a path of touching cells, so a long word is always there to find. It then fills the other cells with letters weighted by how often they appear in common words. The most frequent Ukrainian letters there are а, о, р, к and н. Finally it counts the common words the grid holds and keeps it only if there are at least twice as many as the level asks you to find. Rare words from the full list are accepted on top, they just are not counted when the grid is checked.
On 300 random grids per level, measured on 25 September 2026, Ukrainian grids held 9 to 25 common words on average, depending on the level. English grids held 17 to 48. English accepts plurals and verb forms, which is a likely reason for the gap, though we have not measured it.
Which words are left out
Some words cannot appear at all, and it is fair to say which.
- Words with ґ. The search dictionary replaces ґ with г, so ґанок (porch) is stored as ганок, which is a spelling mistake. We removed every such word we could identify, those found in the Common Voice sentences plus a hand list of known ones, and the letter ґ never appears in the grid. A rare word with ґ that is in neither source may still be in the list spelled with г. That is a known gap.
- Words with an apostrophe or a hyphen. The grid has no cell for them, so words like памʼять (memory) and мʼясо (meat) are not in the game.
- Proper names, dropped by the lemma rule above.
- Plurals and other cases. коти (cats) or слова (of the word) cost a life, even though they are real Ukrainian words. The instructions say so before the first level.
- Offensive words. A hand-made block list of 43 Ukrainian words, including slurs. A blocked word never counts and never costs a life, and a grid that could spell one is thrown away. The dictionary's own slang and rarity tags were removed in the search version, so this list is the only filter. It is our first draft and still under review.
The dictionary snapshot dates from 2020. We assume, without having checked word by word, that it already follows the 2019 spelling rules.
What this means when you play
The rule is easy to hold in your head. Look for things, not actions. A noun like сила (strength) or літо (summer) counts, a verb or an adjective does not, and neither does a plural. Longer words are worth the effort. They add more time, 2 seconds for a 3-letter word on the early levels and 12 seconds for an 8-letter one, and more points. The next article, word grid tips, goes through where to look for words in the grid.
Credits
The Ukrainian list is derived from morfologik-ukrainian-search 4.9.1 by Andriy Rysin and the dict_uk contributors, under the Apache License 2.0, filtered and changed by us as described above. Word frequencies were counted on Mozilla Common Voice sentences, most of which are released under CC0. The English list is derived from SCOWL by Kevin Atkinson and the other copyright holders named in its notice.
Try Word Grid in either language, free up to level 5, or see all games. All 15 Tyamka games also open inside Telegram without installing anything, which brain games in Telegram covers in full.