RiTa† is a free/open-source library for writing in programmable media. It provides functions for simple language processing and generation tasks without the overhead or complexity of a full NLP stack. Designed to be small and easy-to-use, it runs in a variety of environments including the browser, p5.js, Processing, Node and Android. Features include grammar and Markov-based text generation, tools for inflection, conjugation, stemming and tokenization, as well as analysis of English features such as part-of-speech, phonemes, syllables, and stresses. RiTa's customizable lexicon can be searched via partial matches on combinations of any of the features listed above. It also includes a letter-to-sound engine for analysis of unknown words, and a small scripting language designed for writers (RiScript)
† from old Norse, meaning to mark, scratch, or scribble
Text-generation via Markov-chains and context-free grammars (with built-in support for RiScript)
Smart lexicon search to match pos, stress, syllable and letter count, stress, soundex, and rhyme (regex) patterns
Modules for tokenization, inflection,
stemming, verb conjugation, and
concordance/KWIC model creation
Customizable lexicon with a powerful letter-to-sound algorithm for analysis of unknown words
Taggers for a range of granular features, including phonemes, stress, part-of-speech, syllables, etc.
Runs in Node or the browser
with or without p5/js & Processing
(also in Android)