react-native-password-intelligence
Türkçe parolaları tanıyan parola gücü kiti. Standart ölçerlerin zayıf saymadığı mehmet1907, karakartal ya da askim34 gibi kalıpları yakalar; npm'de, MIT lisansıyla.
- gzip, önce 236 kB
- ~37 kB
- test
- 230+
- npm, provenance imzalı
- 0.4.1
Proje hakkında
Standart parola ölçerler password123'ü zayıf sayar ama mehmet1907, karakartal ya da askim34 gibi Türkçe kalıpları zayıf bulmaz. Bu kit zxcvbn-ts motorunu Türkçeye özgü bir katmanla sarar: adlar ve soyadları, futbol kulüpleri, şehirler ve plakalar, markalar, sevgi sözcükleri ve klavye yürüyüşleri. Çekirdeği, React bağımlılığı taşımayan ayrı bir pakete (password-intelligence) ayırdım; React Native paketi bunun üzerine bir hook ve hazır bir ölçer bileşeni ekler. 0.4.0 sürümünde tam İngilizce parola listesi yerine en sık 4.000 parolayı gömerek paketin gzip boyutunu 236 kB'tan yaklaşık 37 kB'a indirdim. Altındaki Türkçe dil paketini zxcvbn-ts'e de ben ekledim (PR #315, birleştirildi). 0.4.1 sürümü 6 Eylül 2026'da npm provenance imzasıyla yayımlandı; paket React Native Directory'de iOS, Android, Web ve Expo Go desteğiyle listeleniyor.
Öne çıkanlar
- 877 kaynak terimden türetilen yaklaşık 1.260 Türkçe kayıt
- Adlar, soyadları, futbol kulüpleri, şehir ve plakalar, markalar, burçlar ve klavye yürüyüşleri
- Türkçe büyük harf onarımı: İSTANBUL34 ve ŞANLIURFA da yakalanır
- Türkçe uyarı ve öneri metinleri
- usePasswordRisk hook'u ve hazır PasswordMeter bileşeni
- React'siz çekirdek paket: password-intelligence (Node, Next.js, komut satırı)
- Yerel kod ya da Expo eklentisi gerektirmez; iOS, Android, Web ve Expo Go
- CI'da gzip bütçesi ve yayımlanan paket içeriği denetimi
- npm provenance imzalı yayın
Zorluklar
0.3.0 tam İngilizce parola listesini statik olarak içeri aldığı için her uygulamaya 229 kB gzip sözlük ekliyordu; Metro tree-shaking yapmadığından uygulamaların kaçışı yoktu. 0.4.0 en sık 4.000 parolayı gömüyor ve bedeli de ölçüldü: Listenin ötesindeki 1.223 gerçek sızdırılmış parolanın %3,4'ü artık 3 ya da 4 puan alıyor. Tam listeyi isteyen iki satırla geri yükleyebilir. Kütüphane istemci tarafında yalnızca puan verir, hiçbir parolayı reddetmez; NIST SP 800-63B'nin istediği engelleme listesi kontrolü sunucuda yapılmalı.