# @zxcvbn-ts/core

> Realistic password strength estimation written in typescript

Latest version **4.2.0** (published 2026-08-12) · MIT license · 0 weekly downloads

## Install

```sh
npm install @zxcvbn-ts/core
pnpm add @zxcvbn-ts/core
yarn add @zxcvbn-ts/core
bun add @zxcvbn-ts/core
```

## Health

**Score 65/100 (B)** — status: active.

Positive: has types; esm support; no vulnerabilities; recently updated; high maintenance score.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 4.2.0 |
| Published | 2026-08-12 |
| First published | 2021-01-05 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 1 |
| Unpacked size | 774.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 1221 |
| Author | zxcvbn-ts |
| Maintainers | mrwook |
| Keywords | password, passphrase, security, authentication, strength, meter, quality, estimation, pattern, cracking, scoring, entropy, bruteforce |

## Links

- npm: https://www.npmjs.com/package/@zxcvbn-ts/core
- Repository: https://github.com/zxcvbn-ts/zxcvbn
- Issues: https://github.com/zxcvbn-ts/zxcvbn/issues
- npm.io page: https://npm.io/package/@zxcvbn-ts/core

## Dependencies (1)

- [fastest-levenshtein](https://npm.io/package/fastest-levenshtein.md) 1.0.16

## Alternatives

- [@clerk/clerk-expo](https://npm.io/package/@clerk/clerk-expo.md) — 133.6K weekly downloads
- [@pothos/plugin-authz](https://npm.io/package/@pothos/plugin-authz.md) — 12.4K weekly downloads
- [@bounded-sh/client](https://npm.io/package/@bounded-sh/client.md) — 3.2K weekly downloads
- [@luigi-project/plugin-auth-oauth2](https://npm.io/package/@luigi-project/plugin-auth-oauth2.md) — 2.3K weekly downloads
- [@nocobase/plugin-verification](https://npm.io/package/@nocobase/plugin-verification.md) — 2.0K weekly downloads

## Recent versions

- 4.2.0 (latest) — 2026-08-12
- 4.0.0-beta.4 (beta) — 2026-05-13
- 4.1.2 — 2026-06-16
- 4.1.1 — 2026-06-13
- 4.1.0 — 2026-06-11
- 4.0.0-beta.3 — 2026-03-04
- 4.0.0-beta.2 — 2024-09-30
- 4.0.0-beta.1 — 2024-09-30
- 4.0.0-beta.0 — 2024-07-31
- 3.0.4 — 2023-09-17
- 3.0.3 — 2023-07-17
- 3.0.2 — 2023-06-06
- 3.0.1 — 2023-05-10
- 3.0.0 — 2023-05-07
- 2.2.1 — 2023-02-06
- … 15 more at https://npm.io/package/@zxcvbn-ts/core/versions

## README

# zxcvbn-ts

**zxcvbn** is a password strength estimator inspired by password crackers.
It recognizes and analyzes over 40 thousand common passwords using pattern matching and conservative estimation and
filters out common first names, last names, popular words from Wikipedia and common words in many cultures,
and recognizes common patterns like dates, repetitions (e.g. 'aaa'), sequences (e.g. 'abcd'), keyboard smashes (e.g. 'qwertyuiop'), and l33t speak.

## Installation

#### npm:

`npm install @zxcvbn-ts/core @zxcvbn-ts/language-common --save`

#### yarn:

`yarn add @zxcvbn-ts/core @zxcvbn-ts/language-common`

## Setup

```js
import { ZxcvbnFactory } from '@zxcvbn-ts/core'
import * as zxcvbnCommonPackage from '@zxcvbn-ts/language-common'
import * as zxcvbnEnPackage from '@zxcvbn-ts/language-en'

const options = {
  dictionary: {
    ...zxcvbnCommonPackage.dictionary,
    ...zxcvbnEnPackage.dictionary,
  },
  graphs: zxcvbnCommonPackage.adjacencyGraphs,
  translations: zxcvbnEnPackage.translations,
}
const zxcvbn = new ZxcvbnFactory(options)

const password = 'somePassword'
zxcvbn.check(password)
```

---
_Source: https://npm.io/package/@zxcvbn-ts/core · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
