The nysiis
package provides a JavaScript implementation of the New York State Identification and Intelligence System (NYSIIS) phonetic encoding algorithm. NYSIIS encodes names based on pronunciation, which is helpful in name-matching and searching applications.
npm i nysiis
# or
yarn add nysiis
import Nysiis from 'nysiis';
// Create an instance of the Nysiis class
const nysiis = new Nysiis();
// Examples
const name1 = 'Watkins';
const encodedName1 = nysiis.encode(name1);
console.log(`Encoded name for "${name1}": ${encodedName1}`);
const name2 = 'Robert Johnson';
const encodedName2 = nysiis.encode(name2);
console.log(`Encoded name for "${name2}": ${encodedName2}`);
const name3 = 'Samantha Williams';
const encodedName3 = nysiis.encode(name3);
console.log(`Encoded name for "${name3}": ${encodedName3}`);
const name4 = 'Olanrewaju Akinyele'; // Yoruba
const encodedName4 = nysiis.encode(name4);
console.log(`Encoded name for "${name4}": ${encodedName4}`);
const name5 = 'Obinwanne Obiora'; // Igbo
const encodedName5 = nysiis.encode(name5);
console.log(`Encoded name for "${name5}": ${encodedName5}`);
const name6 = 'Abdussalamu Abubakar'; // Hausa
const encodedName6 = nysiis.encode(name6);
console.log(`Encoded name for "${name6}": ${encodedName6}`);
const name7 = 'Virat Kohli'; // Hindi
const encodedName7 = nysiis.encode(name7);
console.log(`Encoded name for "${name7}": ${encodedName7}`);
const name8 = 'Usman Shah'; // Urdu
const encodedName8 = nysiis.encode(name8);
console.log(`Encoded name for "${name8}": ${encodedName8}`);
@inproceedings{Rajkovic2007,
author = {Petar Rajkovic and Dragan Jankovic},
title = {Adaptation and Application of Daitch-Mokotoff Soundex Algorithm on Serbian Names},
booktitle = {XVII Conference on Applied Mathematics},
editors = {D. Herceg and H. Zarin},
pages = {193--204},
year = {2007},
publisher = {Department of Mathematics and Informatics, Novi Sad},
url = {https://jmp.sh/hukNujCG}
}
This project is licensed under the MIT License.
(c) 2024 Finbarrs Oketunji.