dart_zxcvbn 0.0.1+2 dart_zxcvbn: ^0.0.1+2 copied to clipboard
A port of @zxcvbn-ts/zxcvbn to Dart.
dart_zxcvbn #
❗ THIS PACKAGE IS STILL WORK IN PROGRESS ❗
Description #
This package is a Dart port of @zxcvbn-ts/zxcvbn, which is a Typescript rewrite of the original library zxcvbn from Dropbox.
Usage #
import 'package:dart_zxcvbn/dart_zxcvbn.dart';
import 'package:dart_zxcvbn_language_common/dart_zxcvbn_language_common.dart';
import 'package:dart_zxcvbn_language_en/dart_zxcvbn_language_en.dart';
final common = LanguageCommon();
zxcvbn.setOptions(Options(
dictionary: Dictionary.merge([
common.dictionary,
LanguageEn().dictionary,
]),
graphs: common.adjacencyGraphs,
translations: LanguageEn().translations,
));
final result = zxcvbn('test');
TODO #
- ❌ Async matching
- ❌ date matcher
- ❌ dictionary matcher
- ✅ dictionary (bruteforce) matcher
- ❌ dictionary (l33t) matcher
- ✅ dictionary (reverse) matcher
- ❌ regex matcher
- ❌ repeat matcher
- ✅ sequence matcher
- ❌ spatial matcher
Credits #
- Huge thanks goes to creators of @zxcvbn-ts/zxcvbn which is a solid foundation for this Dart port
- We use levenshtein implementation from brinkler/levenshtein-dart which was released as Public Domain
License #
- see LICENSE