
ODict
An open-source dictionary file format and toolchain with instant offline lookups, full-text search, and APIs for Rust, Python, and JavaScript.
ODict (The Open Dictionary) is an open-source, offline-first dictionary file format and toolchain for lexical data. You author dictionaries as simple XML — with senses grouped by part of speech, definitions, examples, etymologies, and cross-references — then compile them into a compact binary .odict file. A single dictionary can hold thousands of entries while staying under 1MB, and exact lookups take under a second without any indexing step.
The toolchain ships as a single Rust binary that runs almost anywhere. The odict CLI covers creating, compiling, looking up, tokenizing, and serving dictionaries, plus full-text search powered by a Tantivy index built once with odict index. You can also embed ODict directly in applications through official bindings for Rust, Python, and JavaScript, or run odict serve to expose a local JSON API with lookup, search, split, and tokenize endpoints. Remote dictionaries such as Wiktionary can be downloaded with odict download wiktionary/eng.
Compared to proprietary dictionary ecosystems like Babylon or the Apple Dictionary app — whose file formats are closed and whose premium content is locked to their own software — ODict is a portable, open format anyone can author, read, and distribute. It is a modern take on older open formats like StarDict: XML authoring instead of plain-text dumps, compiled binaries for speed, built-in tokenization, and an HTTP server out of the box. The project is free and open source under GPL-3.0.








