Wiktionary dump file parser and multilingual data extractor
AI Analysis
Wiktextract is a specialized Python tool and package for extracting structured multilingual dictionary data from Wiktionary dumps, with template and Lua macro expansion for high-quality, accurate data extraction. It serves NLP researchers, machine translation projects, and language technology developers who need programmatic access to morphological, phonetic, and semantic information across thousands of languages — not suited for general-purpose users or those seeking pre-extracted datasets (...
Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.
AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.
Wiktionary parser that extracts multilingual lexical data via Lua template expansion for NLP and translation tasks
Wiktextract is a Python utility that parses Wiktionary dump files and exports structured multilingual lexical data in JSONL format. It distinguishes itself by expanding Lua templates and macros, enabling higher fidelity extraction of word senses, morphology, translations, and pronunciation data. The project serves NLP researchers, machine translation systems, and language data consumers. Pre-extracted datasets are published and maintained at kaikki.org, reducing barriers to adoption.
Created October 2018 by Tatu Ylonen, the project emerged to address gaps in existing Wiktionary extraction tools. The focus on Lua macro expansion reflects technical evolution in Wiktionary's template system. By December 2020, the README claims it was 'the most comprehensive tool available' for this task.
Steady adoption driven by availability of pre-extracted data at kaikki.org, which lowers friction for end-users who need Wiktionary data without running extraction themselves. Recent activity (last push 2026-07-07, 18 stars in 7 days) suggests sustained interest. Growth appears modest but consistent rather than explosive—typical of specialized infrastructure tooling.
Pre-extracted data available at kaikki.org with documented download options (per-language, per-word, compressed archives) suggests active real-world consumption. The project mentions kaikki.org as primary distribution channel, implying users prefer data downloads over running extraction locally. No direct user testimonials, company usage, or citation count visible in provided metadata. Adoption not extensively documented but usage pattern (regular data updates) implies operational deployments.
Based on README, the tool reads compressed Wiktionary XML dumps, expands templates and Lua modules in-memory, and outputs JSONL-formatted dictionaries. Likely handles language-specific extraction modules (English extraction explicitly described as most complete). Appears designed for batch processing, with runtime measured in hours to days for full English Wiktionary.
Not documented in README. No mention of test suites, CI/CD, or validation frameworks.
Repository shows active maintenance: last commit 2026-07-07 (within 24 hours of evaluation date). Created 2018 (7.7 years old), indicating sustained project life. However, README truncation limits visibility into current development velocity and issue handling practices. The kaikki.org data service updates 'every few days,' suggesting operational commitment beyond code commits.
ADOPT IF: you need structured multilingual lexical data from Wiktionary (translations, morphology, pronunciations, word senses) and prefer pre-extracted, regularly updated datasets over custom parsing. AVOID IF: you need extraction of arbitrary Wikipedia or non-Wiktionary sources, or require active third-party support and extensive documentation beyond README. MONITOR IF: you depend on Wiktionary as a data source and want to remain aware of extraction tool quality and maintenance status; wiktextract appears to be the most complete option, but verify that kaikki.org data freshness meets your timeline requirements.
Independent dimensions
Mainstream potential
3/10
Technical importance
7/10
Adoption evidence
6/10
- Runtime cost: full extraction of English Wiktionary can require hours to days of compute; users are strongly directed to pre-extracted data, suggesting the tool may not scale for frequent re-extraction cycles.
- Lua expansion complexity: correct handling of Wiktionary's Lua template system is non-trivial; bugs in macro expansion could silently corrupt extracted data without obvious signals.
- Wiktionary format instability: as Wiktionary editing evolves, extraction logic must adapt; maintenance burden on project maintainers is likely ongoing and reactive.
- Documentation gaps: README is truncated in provided metadata; full schema, API contract, and error handling expectations are not visible.
- Single maintainer risk: no evidence of multiple core contributors; project continuity may depend on Tatu Ylonen's availability.
Wiktextract will likely remain the de facto standard for extracting Wiktionary data in NLP and translation workflows, particularly via kaikki.org's pre-extracted datasets. Adoption will continue but remain niche—complementary to, not competitive with, general-purpose NLP libraries. Maintenance likely to persist as long as Wiktionary remains a data source for research and industry.
Newsletter
Get analyses like this every Monday
Free weekly digest of the most interesting open-source discoveries.
Languages
Information
- Language
- Python
- License
- NOASSERTION
- Last updated
- 3d ago
- Created
- 94mo ago
- Analyzed with
- anthropic/claude-haiku-4-5
Stars over time
Contributors over time
Top 100 contributors only — repos with more will plateau at 100.
Open issues
[nl-nl] Newlines in verb forms
[en] notes from verb inflection tables missing
Add some sort of metadata to the extracted dumps.
[es] Compounded verb forms split into different forms
[en] Error in Finnish table parsing
Open pull requests
No open pull requests.
Top contributors
Recent releases
No releases published yet.
Similar repos
CatchTheTornado/text-extract-api
text-extract-api is a self-hosted document extraction and parsing service that...
| Repository | Stars | Week Δ | Language | Score | Updated |
|---|---|---|---|---|---|
|
|
1.2k | +7 | Python | 7/10 | 3d ago |
|
|
3.1k | — | Python | 8/10 | 7mo ago |
|
|
1.2k | — | Python | 7/10 | 2w ago |
|
|
1.6k | — | JavaScript | 7/10 | 3d ago |
|
|
6.3k | — | Python | 8/10 | 17h ago |
|
|
1.7k | — | Python | 7/10 | 1w ago |
Unstract (6,692 stars) is a general document extraction framework; wiktextract is purpose-built for Wiktionary. Different problem domains; not directly competitive.
Google's langextract (37,089 stars) focuses on language detection; wiktextract extracts lexical structure. Complementary tools, not replacements.
Docutranslate (1,174 stars) targets document translation workflows. Wiktextract supplies lexical data that could feed translation pipelines, but serves earlier in the chain.
Zotero translators (1,645 stars) are domain-specific metadata extractors for bibliographic sources. Different extraction target (Wiktionary vs. academic metadata).
BabelDOC (8,865 stars) is a multilingual document processing system. Broader scope; wiktextract is narrowly focused on Wiktionary as the data source.