Structural lexicon data for language-learning apps: grammatical gender, the irregular forms a learner has to memorise, a table resolving an inflected word back to its dictionary form, and phonemic transcriptions.
Published as GitHub Release assets, one release per language. The data is not in this repository — a release asset can be replaced, while a 20 MB binary in the history is in every clone for ever. What is here is the text that defines a release.
| File | What it is |
|---|---|
manifest.json |
Which release is current per language, with sizes and checksums |
ATTRIBUTION.md |
Sources and licences for every pack |
RELEASE-<lang>.md |
The notes published with that language’s release |
manifest.json is the entry point, served from GitHub Pages so it can change
without cutting a release:
https://kenix.github.io/lexicon-packs/manifest.json
It names each language’s current release tag, from which the asset URL follows:
https://github.com/kenix/lexicon-packs/releases/download/<release>/<file>
Both a compressed and a decompressed SHA-256 are published, so a download can be verified either way round.
Do not poll the GitHub API to discover releases — unauthenticated it allows 60 requests per hour per IP, which collapses behind carrier NAT.
lexicon_<lang>_grammar.db.gz — CC0 1.0. Gender, irregular forms and the
form table, from Wikidata
Lexemes. Public
domain; no attribution required, and given anyway.
lexicon_<lang>_ipa.db.gz — CC BY-SA 4.0. Pronunciations from
Wiktionary via
wiktextract.
They are not merged, and must not be: merging would put the stricter licence on both. The pronunciation packs are also why these are downloads rather than bundles — CC BY-SA 4.0 §2(a)(5)(B) forbids applying technological protection measures, and a signed app store binary is wrapped.
See ATTRIBUTION.md for the full notice, which also travels inside each
database in its licence table.
Regular forms. Nobody needs telling that the plural of cat is cats or of
Tisch is Tische; only what the language’s own rules fail to predict is
stored. That is what keeps the files this size, and it is why a language’s
lemma count is the count of its irregular words rather than of its
vocabulary.