Skip to content

Repository files navigation

Interslavic JS utilities

Build Status Coverage

Libraries for working with Interslavic: its morphology, its alphabets, and how close its words are to the Slavic languages they were built from.

Package What it does
@interslavic/morphology inflection, derivation, POS detection; get paradigms and derived forms as CoNLL-U tokens
@interslavic/translit Latin ⇄ Cyrillic ⇄ Glagolitic ⇄ IPA, addressed by BCP 47 codes
@interslavic/levenshtein how recognizable an Interslavic word is to a speaker of a given Slavic language
@interslavic/conllu the token type and UD features the others speak
@interslavic/stemmer stemming and full-text search: one index key per word, whatever alphabet it was typed in

Each package README has installation and examples. ESM only, Node 20+.

Working on it

yarn install, yarn build, yarn test. Development requires Node 22.18+ to run TypeScript sources directly through Node type stripping. Published packages support Node 20+.

yarn test:coverage runs package tests under Node test runner coverage and enforces coverage thresholds (100% for conllu, translit, levenshtein; 99% for morphology).

Releasing

Versions are per package and bumped manually, then published in dependency order:

# 1. bump the versions you are releasing, in packages/*/package.json
# 2. commit, then tag if the main package moved
git tag v4.0.0-next.1        # `v*` tags trigger the lexicon dump
git push --follow-tags
# 3. publish everything whose version is not on npm yet
yarn release

yarn release skips packages whose versions are already published. It publishes to the next tag; latest points to 3.4.4 until v4 leaves prerelease.

Documentation

  • CoNLL-U conventions — which dictionary tag becomes which UPOS tag, what lands in FEATS and MISC
  • Levenshtein tuning — known issues in the normalization pipelines, with fixes
  • Hunspell dictionaries — how the spellchecker files are built, what Hunspell actually does, and why they are built elsewhere

About

Linguistic utilities for Interslavic language: https://medzuslovjansky.github.io/js-utils/

Topics

Resources

Stars

6 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages