spencermountain/compromise

modest natural-language processing

78
/ 100
Verified

Provides pattern matching, morphological transformations (tense, plurality, negation), and numeric text manipulation through a fluent API and extensible plugin system. Uses rule-based symbolic processing with lexical databases rather than machine learning, enabling lightweight client-side operation while supporting multiple languages via separate packages. Handles linguistic ambiguities like contractions and implicit forms through heuristic-driven parsing.

12,053 stars and 1,586,954 monthly downloads. Used by 10 other packages. Available on npm.

Maintenance 10 / 25
Adoption 25 / 25
Maturity 25 / 25
Community 18 / 25

How are scores calculated?

Stars

12,053

Forks

665

Language

JavaScript

License

MIT

Last pushed

Feb 25, 2026

Monthly downloads

1,586,954

Commits (30d)

0

Dependencies

3

Reverse dependents

10

Get this data via API

curl "https://pt-edge.onrender.com/api/v1/quality/nlp/spencermountain/compromise"

Open to everyone — 100 requests/day, no key needed. Get a free key for 1,000/day.