Skip to main content

Crate vlajmaji

Crate vlajmaji 

Source
Expand description

§Vlajmaji

An umbrella library for Vlajmaji, a source-preserving (Re)Lojban dictionary workbench. It re-exports its libraries as vlajmaji::lexicon, vlajmaji::store, and vlajmaji::search.

§Component crates

CrateRoleDocumentation
vlajmaji-lexiconSource registry, versioned dictionary models, original bytes, provenance, imports, and archives.API docs
vlajmaji-storeSQLite dictionary persistence, rebuildable FTS5 indexes, and an optional Oxigraph/RocksDB backend.API docs
vlajmaji-searchSource-grouped dictionary lookup, spelling distance, phonological/prosodic filters, and optional compound analysis.API docs
vlajmaji-cliThe separately installed vlajmaji JSON command-line tool.CLI guide

Use this crate for the umbrella namespace, or depend on component crates directly. The CLI package is installed separately from the library. The underlying phonology comes from bauske-phonology (API docs).

§Use as a library

[dependencies]
vlajmaji = "0.2.0"

§Example

Open an existing dictionary store and retrieve exact, source-grouped assertions:

use vlajmaji::search::{DictionaryExactOptions, DictionarySearchEngine};

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let engine = DictionarySearchEngine::open("dictionary-store")?;
    let result = engine.exact("farvi", DictionaryExactOptions::default())?;
    println!("{} source occurrences", result.totals.occurrences);
    Ok(())
}

Corpus data is not bundled. See the migration and replay guide for importing research inputs and building a store. Records keep competing source assertions separate; computed scores and generated compounds do not establish attested usage or semantic equivalence.

§Optional features

The umbrella library enables no optional features by default.

  • morphology enables compound decomposition and generation through vlajmaji-search and latkerlo-jvotci.
  • graph enables the Oxigraph/RocksDB backend through vlajmaji-store. It requires native C++ and Clang/libclang build tooling.

These features can be enabled independently or together. The CLI package enables morphology separately; that does not change this library’s defaults for callers that depend only on vlajmaji.

Requires Rust 1.98 or newer. Licensed under Apache-2.0; corpus content terms remain separate from the code license.

For the versioned dictionary APIs, see the dictionary model guide and source-grouped lookup guide.

Modules§

lexicon
Source-preserving lexical records, imports, and archives. A source-preserving envelope for captured lexical material.
search
Lexical queries and computed spelling, sound, and compound analyses. Source-preserving lexical queries and bounded phonological filters.
store
Rebuildable SQLite indexes and the optional graph backend. Concrete local persistence for the accepted source-preserving lexical archive.