# string-similarity-alg

> Compare strings with best suitable algorithm for your need

Latest version **1.3.2** (published 2024-01-23) · ISC license · 0 weekly downloads

## Install

```sh
npm install string-similarity-alg
pnpm add string-similarity-alg
yarn add string-similarity-alg
bun add string-similarity-alg
```

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; no vulnerabilities; high quality score.

Warnings: low downloads; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.3.2 |
| Published | 2024-01-23 |
| First published | 2024-01-06 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 39.7 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Leonardo Carvalho |
| Maintainers | leodsc |
| Keywords | string, similarity, jaro-winkler, levenshtein, algorithms |

## Links

- npm: https://www.npmjs.com/package/string-similarity-alg
- npm.io page: https://npm.io/package/string-similarity-alg

## Alternatives

- [@mce/gif](https://npm.io/package/@mce/gif.md) — 2.6K weekly downloads
- [cleanse](https://npm.io/package/cleanse.md) — 173 weekly downloads
- [str](https://npm.io/package/str.md) — 127 weekly downloads
- [naming](https://npm.io/package/naming.md) — 95 weekly downloads
- [tap-telco-api](https://npm.io/package/tap-telco-api.md) — 19 weekly downloads

## Recent versions

- 1.3.2 (latest) — 2024-01-23
- 1.3.1 — 2024-01-23
- 1.2.0 — 2024-01-23
- 1.1.5 — 2024-01-06
- 1.1.4 — 2024-01-06
- 1.1.3 — 2024-01-06
- 1.1.2 — 2024-01-06
- 1.1.1 — 2024-01-06
- 1.1.0 — 2024-01-06
- 1.0.0 — 2024-01-06

## README

<h1 align="center">String Similarity Algorithms</h1>

### Usage
This package can be used when need to check how similar two words are. You can choose among some implemented algorithms that suits your best use case.

[Below](###Algorithms) you will find all the implemented algorithms and when to use each. You can import a specific algorithm or use the strinSimilarity function.

It is very useful when you need different parameters for the same algorithm, such as `jaroWinkler`.
```js
import stringSimilarity, { sorensenDice } from "string-similarity-alg";

const jaroWinklerResult = stringSimilarity("jaro-winkler").compare("game of thrones", "lord of the rings");
const sorensenDiceResult = sorensenDice.compare("game of thrones", "lord of the rings");
```

### Installation

You can install this package using populars package managers:

#### npm
```
npm install string-similarity-alg
```

#### yarn
```
yarn add string-similarity-alg
```

#### pnpm
```
pnpm add string-similarity-alg
```

### Algorithms
| Algorithm       | Since | Best use case                                                                          | Example                                   |
|-----------------|-------|----------------------------------------------------------------------------------------|-------------------------------------------|
| Levenshtein     | 1.0.0 | Small strings / similar words                                                          | farmville / faremviel                     |
| Soresen-Dice    | 1.0.0 | Fuzzy matching, very mispelled words or poorly written                                 | user-home-page.component.ts / usrhompcomp |
| Jaro-Winkler    | 1.0.0 | Same as Jaro similarity, gives more weight to strings that have the same first letters |     -                                     |
| Jaro Similarity | 1.0.0 | General purpose, use this if you don't think any of the others are valid               |     -                                     |

### Contributing
Anyone is welcome contribute to this project, implementing new algorithms or fixing something.

---
_Source: https://npm.io/package/string-similarity-alg · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
