fastest-levenshtein (1.0.16)
Published 2026-02-24 13:56:39 +00:00 by atheaadmin
Installation
registry=npm install fastest-levenshtein@1.0.16"fastest-levenshtein": "1.0.16"About this package
fastest-levenshtein 🚀
Fastest JS/TS implemenation of Levenshtein distance.
Measure the difference between two strings.
$ npm i fastest-levenshtein
Usage
Node
const {distance, closest} = require('fastest-levenshtein')
// Print levenshtein-distance between 'fast' and 'faster'
console.log(distance('fast', 'faster'))
//=> 2
// Print string from array with lowest edit-distance to 'fast'
console.log(closest('fast', ['slow', 'faster', 'fastest']))
//=> 'faster'
Deno
import {distance, closest} from 'https://deno.land/x/fastest_levenshtein/mod.ts'
// Print levenshtein-distance between 'fast' and 'faster'
console.log(distance('fast', 'faster'))
//=> 2
// Print string from array with lowest edit-distance to 'fast'
console.log(closest('fast', ['slow', 'faster', 'fastest']))
//=> 'faster'
Benchmark
I generated 500 pairs of strings with length N. I measured the ops/sec each library achieves to process all the given pairs. Higher is better.
| Test Target | N=4 | N=8 | N=16 | N=32 | N=64 | N=128 | N=256 | N=512 | N=1024 |
|---|---|---|---|---|---|---|---|---|---|
| fastest-levenshtein | 44423 | 23702 | 10764 | 4595 | 1049 | 291.5 | 86.64 | 22.24 | 5.473 |
| js-levenshtein | 21261 | 10030 | 2939 | 824 | 223 | 57.62 | 14.77 | 3.717 | 0.934 |
| leven | 19688 | 6884 | 1606 | 436 | 117 | 30.34 | 7.604 | 1.929 | 0.478 |
| fast-levenshtein | 18577 | 6112 | 1265 | 345 | 89.41 | 22.70 | 5.676 | 1.428 | 0.348 |
| levenshtein-edit-distance | 22968 | 7445 | 1493 | 409 | 109 | 28.07 | 7.095 | 1.789 | 0.445 |
Relative Performance
This image shows the relative performance between fastest-levenshtein and js-levenshtein (the 2nd fastest). fastest-levenshtein is always a lot faster. y-axis shows "times faster".
License
This project is licensed under the MIT License - see the LICENSE.md file for details
Dependencies
Development Dependencies
| ID | Version |
|---|---|
| @types/benchmark | ^1.0.33 |
| @types/jest | ^26.0.15 |
| @typescript-eslint/eslint-plugin | ^4.7.0 |
| @typescript-eslint/parser | ^4.7.0 |
| benchmark | ^2.1.4 |
| coveralls | ^3.1.0 |
| eslint | ^7.13.0 |
| eslint-config-node | ^4.1.0 |
| eslint-config-prettier | ^6.15.0 |
| eslint-plugin-import | ^2.22.1 |
| eslint-plugin-node | ^11.1.0 |
| eslint-plugin-prettier | ^3.1.4 |
| fast-levenshtein | ^2.0.6 |
| jest | ^26.6.3 |
| js-levenshtein | ^1.1.6 |
| leven | ^3.1.0 |
| levenshtein-edit-distance | ^2.0.5 |
| natural | ^2.1.5 |
| prettier | ^2.1.2 |
| talisman | ^1.1.3 |
| typescript | ^4.0.5 |
Keywords
levenshtein
distance
fast
fastest
edit
string
similarity
algorithm
match
comparison
fuzzy
search
string
matching
similar
node
difference
