Skip to content

@studnicky/matching

@studnicky/matching supplies independent deterministic tools. A caller chooses whether to normalize text, create a candidate pool, score a candidate pair, or test a structural pattern; the package does not turn those choices into a prescribed pipeline.

GlobMatcher supports standard *, **, ?, character-class, and brace-alternative glob syntax through a browser-compatible implementation. TrieMatcher compiles one segment pattern for repeated evaluation, while TreeMatcher and the candidate-index classes own mutable registration and candidate materialization.

Install

bash
pnpm add @studnicky/matching

Exports

SymbolPurposeImport path
BloomCandidateFilterProbabilistic membership prefilter with false-positive evidence.@studnicky/matching
CandidateSetInterfaceDefines a materialized candidate identifier set.@studnicky/matching
CuckooCandidateFilterDeletable probabilistic membership prefilter.@studnicky/matching
LshCandidateIndexLocality-sensitive candidate materialization index.@studnicky/matching
NgramCandidateIndexCandidate index keyed by character n-grams.@studnicky/matching
DoubleMetaphoneEncoderPrimary and alternate phonetic encoding.@studnicky/matching
MetaphoneEncoderDeterministic phonetic encoding.@studnicky/matching
MinimumHashEncoderFixed-seed approximate set-similarity signature.@studnicky/matching
MatchEvidenceInterfaceDefines deterministic match evidence for a candidate.@studnicky/matching
SoundexEncoderEnglish phonetic encoding.@studnicky/matching
TfIdfEncoderSparse TF-IDF vector encoder.@studnicky/matching
NgramExtractorCharacter n-gram extraction.@studnicky/matching
TokenExtractorToken extraction.@studnicky/matching
AhoCorasickMatcherLiteral substring matching with an Aho–Corasick automaton.@studnicky/matching
ExactMatcherExact value matching.@studnicky/matching
GlobMatcherGlob pattern matching.@studnicky/matching
RadixMatcherPrefix-compressed structural pattern matching.@studnicky/matching
SuffixMatcherBoyer–Moore-style suffix matching.@studnicky/matching
TreeMatcherHierarchical structural matching.@studnicky/matching
TrieMatcherSegment-trie structural matching.@studnicky/matching
StringNormalizerBoundary string canonicalization.@studnicky/matching
CosineScorerSparse-vector cosine similarity.@studnicky/matching
DamerauLevenshteinScorerTransposition-aware edit-distance similarity.@studnicky/matching
JaccardScorerSet overlap similarity.@studnicky/matching
JaroScorerShort-string similarity.@studnicky/matching
JaroWinklerScorerPrefix-weighted short-string similarity.@studnicky/matching
LevenshteinScorerEdit-distance similarity.@studnicky/matching
NgramScorerCharacter n-gram similarity.@studnicky/matching
SorensenDiceScorerSet overlap similarity.@studnicky/matching
ScoreEvidenceInterfaceDefines a score and its deterministic evidence.@studnicky/matching
SelectionInterfaceDefines a selected candidate and score.@studnicky/matching

Each category is also available from its named subpath: candidate-sources, encoders, extractors, matchers, normalizers, and scorers.

Source on GitHub