├── .gitignore ├── .npmignore ├── LICENSE ├── README.md ├── package-lock.json ├── package.json ├── src ├── index.js ├── nameToNick.json └── nickToName.json ├── test ├── getAliases.test.js └── index.cjs └── webpack.config.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | dist/ 3 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | webpack.config.js 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Stichting Bellingcat 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # alias-generator 2 | 3 | Node module to generate likely aliases for a given human name. 4 | 5 | ## Usage 6 | 7 | In node 8 | ``` 9 | import getAliases from '@bellingcat/alias-generator'; 10 | 11 | let list = getAliases("William Randolph Hearst"); 12 | console.log(list); 13 | ``` 14 | 15 | In the browser 16 | ``` 17 | 18 | 24 | ``` 25 | 26 | Output: 27 | 28 | ``` 29 | [ 30 | 'william hearst', 31 | 'hearst, william', 32 | 'william randolph hearst', 33 | 'hearst, william randolph', 34 | 'william r hearst', 35 | 'hearst, william r', 36 | 'w hearst', 37 | 'w randolph hearst', 38 | 'w r hearst', 39 | 'wr hearst' 40 | ] 41 | ``` 42 | 43 | ## Considerations 44 | 45 | When generating name variants, many considerations apply and may be culturally specific. See https://en.wikipedia.org/wiki/Personal_name 46 | 47 | **Initials** may be substituted for first or middle names, and middle names may be omitted. 48 | 49 | Example: The name "Alfred Jodocus Kwak" may appear online as any of the following equivalents: 50 | * Alfred Kwak 51 | * Alfred J. Kwak 52 | * AJ Kwak 53 | * A. J. Kwak 54 | * Kwak, Alfred J 55 | * Al Kwak 56 | 57 | **Name order** is culturally specific: East Asian names are often written surname-givenname instead of the western style of givenname-surname, not to mention in a different character sets: 58 | 59 | Example: Hayao Miyazaki 60 | * Miyazaki Hayao 61 | * 宮崎 駿 62 | 63 | **Patronyms/matronyms** (names derived from the given name of a parent) may appear before, after, or in place of a surname. 64 | 65 | Example: Abel Janszoon Tasman ("Abel, son of Jan Tasman") 66 | * Abel Tasman 67 | * Abel Janszoon 68 | 69 | **Shortened or diminuitive** versions of a name may exist and are culturally specific. 70 | 71 | Example: Mike for Michael, Bill for William, Bob for Robert in the West. Katya for Ekaterina in Eastern Europe. 72 | 73 | **Marriage** may result in surname changes, hyphenation or combination of one's original name(s). 74 | 75 | **Tussenvoegsels** in Dutch names such as "van der Laan" may be abbreviated "v.d. Laan" 76 | 77 | 78 | ## Possibly Helpful Libraries 79 | * https://nameparser.readthedocs.io/en/latest/ (python) 80 | * https://github.com/theiconic/name-parser (php) 81 | * https://github.com/berkmancenter/namae (ruby) 82 | * https://github.com/carltonnorthern/nicknames (python) 83 | * https://www.nameapi.org/en/demos/name-parser/ 84 | * https://searchgizmos.com/generate-and-search-for-name-variants-with-carls-name-net/ 85 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@bellingcat/alias-generator", 3 | "version": "4.0.0", 4 | "description": "Parse a human name and generate a list of possible variants", 5 | "module": "src/index.js", 6 | "type": "module", 7 | "scripts": { 8 | "build": "webpack --mode development", 9 | "test": "NODE_OPTIONS=--experimental-vm-modules npx jest", 10 | "prepublish": "npm run build" 11 | }, 12 | "author": "Stichting Bellingcat", 13 | "license": "MIT", 14 | "dependencies": { 15 | "humanparser": "^2.7.0", 16 | "tussenvoegsels": "^1.0.0" 17 | }, 18 | "devDependencies": { 19 | "@babel/core": "^7.22.9", 20 | "@babel/preset-env": "^7.22.9", 21 | "babel-jest": "^29.6.2", 22 | "babel-loader": "^9.1.3", 23 | "jest": "^29.6.2", 24 | "webpack": "^5.88.2", 25 | "webpack-cli": "^5.1.4" 26 | }, 27 | "jest": { "transform": {} } 28 | } 29 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | import nickToName from './nickToName.json' assert { type: 'json' }; 2 | import nameToNick from './nameToNick.json' assert { type: 'json' }; 3 | import humanparser from 'humanparser'; 4 | import {findPreposition} from 'tussenvoegsels'; 5 | 6 | const getMiddleInitial = (nameObj) => { 7 | if (!nameObj.middleName || typeof nameObj.middleName !== 'string') { 8 | return null; 9 | } 10 | 11 | return nameObj.middleName[0].toLowerCase(); 12 | } 13 | const getFirstInitial = (nameObj) => { 14 | if (!nameObj.firstName || typeof nameObj.firstName !== 'string') { 15 | return null; 16 | } 17 | 18 | return nameObj.firstName[0].toLowerCase(); 19 | } 20 | 21 | function transpose(name) { 22 | // Last names to the front! 23 | 24 | let results = []; 25 | if (name.middleName && name.firstName && name.lastName) { 26 | results.push( 27 | // Doe, John James 28 | [name.lastName, [name.firstName, name.middleName].join(' ')].join(', ') , 29 | ); 30 | } 31 | if (name.firstName && name.middleInitial && name.lastName) { 32 | results.push( 33 | 34 | // Doe, John J 35 | [name.lastName, [name.firstName, name.middleInitial].join(' ')].join(', '), 36 | ); 37 | } 38 | if (name.firstName && name.lastName) { 39 | results.push( 40 | // Doe, John 41 | [name.lastName, name.firstName].join(', '), 42 | ); 43 | } 44 | return results; 45 | } 46 | 47 | function commonVariations(name) { 48 | let results = []; 49 | 50 | if (name.middleName && name.firstName && name.lastName) { 51 | results.push( 52 | // John James Doe 53 | [name.firstName, name.middleName, name.lastName].join(' '), 54 | ); 55 | } 56 | if (name.middleInitial) { 57 | results.push( 58 | // John J Doe 59 | [name.firstName, name.middleInitial, name.lastName].join(' '), 60 | ); 61 | } 62 | if (name.firstName && name.lastName) { 63 | results.push( 64 | // John Doe 65 | [name.firstName, name.lastName].join(' ') 66 | ); 67 | } else if (name.firstName || name.lastName) { 68 | // Edge case: only one name so return it 69 | results.push(name.firstName || name.lastName); 70 | } 71 | 72 | if (name.firstInitial && name.lastName) { 73 | results.push( 74 | // J Doe 75 | [name.firstInitial, name.lastName].join(' '), 76 | ); 77 | } 78 | if (name.firstInitial && name.middleName) { 79 | results.push( 80 | 81 | // J James Doe 82 | [name.firstInitial, name.middleName, name.lastName].join(' ') 83 | ); 84 | } 85 | if (name.firstInitial && name.middleInitial) { 86 | results.push( 87 | 88 | // J J Doe 89 | [name.firstInitial, name.middleInitial, name.lastName].join(' '), 90 | 91 | // JJ Doe 92 | [(name.firstInitial+name.middleInitial), name.lastName].join(' '), 93 | ); 94 | } 95 | 96 | Array.prototype.push.apply(results, transpose(name)); 97 | 98 | return results; 99 | } 100 | 101 | function dutchVariations(name) { 102 | let results = []; 103 | if (name.lastName) { 104 | let dutch = findPreposition(name.lastName); 105 | 106 | if (dutch.preposition) { 107 | const tussenvoegsel = dutch.preposition.trim().toLowerCase(); 108 | switch (tussenvoegsel) { 109 | case 'van der': 110 | case 'van den': 111 | case 'van dem': 112 | case 'van de': 113 | let abbrev = "vd " + dutch.lastName; 114 | let copy = { ...name, lastName: abbrev }; 115 | 116 | let moreNames = commonVariations(copy); 117 | 118 | Array.prototype.push.apply(results, moreNames); 119 | } 120 | } 121 | } 122 | return results; 123 | } 124 | 125 | function getNamesfromNickname(name) { 126 | return getAlternateNames(name, nickToName); 127 | } 128 | function getNicknamesFromName(name) { 129 | return getAlternateNames(name, nameToNick); 130 | } 131 | function getAlternateNames(name, nameMap) { 132 | // Assume the firstName is a nickname and suggest full names 133 | let results = []; 134 | const firstName = name.firstName.toLowerCase(); 135 | if (nameMap[firstName]) { 136 | nameMap[firstName].forEach(function(altFirstName) { 137 | let copy = { ...name, firstName: altFirstName }; 138 | let moreNames = commonVariations(copy); 139 | Array.prototype.push.apply(results, moreNames); 140 | }); 141 | } 142 | 143 | return results; 144 | } 145 | 146 | export function getAliases(nameStr) { 147 | let name = humanparser.parseName(nameStr); 148 | name.middleInitial = getMiddleInitial(name); 149 | name.firstInitial = getFirstInitial(name); 150 | 151 | for (const namePart in name) { 152 | if (name[namePart]) { 153 | name[namePart] = name[namePart].toLowerCase(); 154 | } 155 | } 156 | 157 | let results = commonVariations(name); 158 | 159 | let dutchResults = dutchVariations(name); 160 | Array.prototype.push.apply(results, dutchResults); 161 | 162 | let nicknames = getNamesfromNickname(name); 163 | Array.prototype.push.apply(results, nicknames); 164 | 165 | let fullnames = getNicknamesFromName(name); 166 | Array.prototype.push.apply(results, fullnames); 167 | 168 | return [...new Set(results)]; // use Set to remove duplicates 169 | } 170 | 171 | export default getAliases; 172 | -------------------------------------------------------------------------------- /src/nameToNick.json: -------------------------------------------------------------------------------- 1 | { 2 | "abigail": ["abbey", "abbi", "abbie", "abby", "abi", "gail", "gayle"], 3 | "adelaide": ["addie"], 4 | "adele": ["addie"], 5 | "adeline": ["addie"], 6 | "agatha": ["aggie"], 7 | "agnes": ["aggie", "nessie"], 8 | "alex": ["al", "lex", "alexander", "alexa"], 9 | "alexa": ["lexi", "al"], 10 | "alexander": ["al", "alec", "alex", "aleck", "elsie", "lex", "sander", "sandy", "sawney", "xan", "zander"], 11 | "alexandra": ["allie", "ally", "aly", "lexi", "lexie", "sandy"], 12 | "alexia": ["lexi", "lexie"], 13 | "alexis": ["lexi", "lexie"], 14 | "alfonso": ["alf", "alfie", "alfy"], 15 | "alfonzo": ["alf", "alfie", "alfy", "fonz", "fonzie"], 16 | "alfred": ["al", "alf", "alfie", "alfy", "allie", "ally", "fred"], 17 | "alice": ["ally"], 18 | "alison": ["ali", "allie", "ally", "aly"], 19 | "alistair": ["allie"], 20 | "allie": ["ali"], 21 | "allison": ["ali"], 22 | "allyson": ["ali"], 23 | "alonzo": ["lonnie", "lonny"], 24 | "alvin": ["allie", "alvie", "alvy"], 25 | "alyson": ["ali"], 26 | "alyssa": ["aly"], 27 | "amanda": ["mandy"], 28 | "ambrose": ["ambers", "ambie", "amby", "brose"], 29 | "amelia": ["millie"], 30 | "andrea": ["andy"], 31 | "andrew": ["andy", "drew"], 32 | "angela": ["ange", "angie"], 33 | "angelika": ["ange", "angie"], 34 | "angelina": ["ange", "angie"], 35 | "anjana": ["anj"], 36 | "ann": ["annie", "jo", "nan", "nannie", "nanny"], 37 | "annabelle": ["belle"], 38 | "anne": ["nanny"], 39 | "annette": ["nettie"], 40 | "annie": ["nannie"], 41 | "anthony": ["ant", "tony"], 42 | "antonia": ["toni", "tonia"], 43 | "antoinette": ["toni"], 44 | "arabella": ["bella"], 45 | "archibald": ["archie"], 46 | "arnold": ["arnie"], 47 | "arthur": ["arfie", "art", "artie", "arty"], 48 | "ashlee": ["ash"], 49 | "ashley": ["ash"], 50 | "audrey": ["audie"], 51 | "augustus": ["augie", "gus"], 52 | "barbara": ["babs", "barb", "barbie"], 53 | "barnabas": ["barney"], 54 | "barnaby": ["barney"], 55 | "barnett": ["barney"], 56 | "barry": ["baz", "bazza"], 57 | "bartholomew": ["bart", "batt"], 58 | "basil": ["baz", "bazza"], 59 | "beatrice": ["bea", "trixie"], 60 | "beatrix": ["trixie"], 61 | "becky": ["becki", "beki"], 62 | "belle": ["bell"], 63 | "benedict": ["ben"], 64 | "benjamin": ["ben", "benji", "benjie", "benjy", "bennie", "benny"], 65 | "bernadette": ["bennie", "benny"], 66 | "bernard": ["barney", "bernie"], 67 | "bernice": ["bennie", "benny"], 68 | "bert": ["bertie"], 69 | "bertram": ["bertie"], 70 | "bessie": ["bessy"], 71 | "bethany": ["beth"], 72 | "bethwyn": ["beth"], 73 | "betty": ["bette"], 74 | "bradford": ["brad"], 75 | "bradley": ["brad"], 76 | "bradly": ["brad"], 77 | "brian": ["bri"], 78 | "bridget": ["biddie", "biddy"], 79 | "caden": ["cade"], 80 | "caleb": ["cal", "cale"], 81 | "calum": ["cal"], 82 | "calvin": ["cal"], 83 | "cameron": ["cam"], 84 | "camilla": ["millie", "milly"], 85 | "campbell": ["camp"], 86 | "candace": ["candi", "candy"], 87 | "candice": ["candy"], 88 | "caroline": ["cal", "callie", "caro", "carrie", "cary"], 89 | "carolyn": ["lyn"], 90 | "cassandra": ["cass", "cassie"], 91 | "catherine": ["cat", "cate", "cath", "cathi", "cathie", "cathy", "catie", "caty", "kate", "katie"], 92 | "cathy": ["cathi", "cathie"], 93 | "cecilia": ["ceecee", "ceecee", "sissy"], 94 | "cecily": ["cecie"], 95 | "chadwick": ["chad"], 96 | "charlene": ["charley", "charlie"], 97 | "charles": ["chad", "charley", "charlie", "chas", "chaz", "chip", "chuck"], 98 | "charlotte": ["charley", "charlie", "lottie"], 99 | "chauncey": ["chance"], 100 | "cherilyn": ["cher"], 101 | "chester": ["chet"], 102 | "christian": ["chris", "kris"], 103 | "christie": ["christy", "kristi", "kristie", "kristy"], 104 | "christina": ["chris", "chrissie", "chrissy", "christy", "kris", "krissy", "kristi", "kristie", "kristy"], 105 | "christine": ["chris", "chrissie", "chrissy", "christie", "krissy"], 106 | "christopher": ["chip", "chris", "christie", "kit", "kris"], 107 | "chuck": ["chuckie", "chucky"], 108 | "clayton": ["clay"], 109 | "clement": ["clem", "clemmie"], 110 | "clementine": ["clem"], 111 | "clifford": ["cliff"], 112 | "clinton": ["clint"], 113 | "conor": ["con"], 114 | "constance": ["connie"], 115 | "cora": ["corrie"], 116 | "corinne": ["corrie"], 117 | "cornelia": ["corrie"], 118 | "cornelius": ["con"], 119 | "curtis": ["curt"], 120 | "cynthia": ["cindy"], 121 | "cyril": ["cy"], 122 | "cyrus": ["cy"], 123 | "daniel": ["dan", "dani", "danny"], 124 | "daniela": ["danny"], 125 | "daniella": ["danny"], 126 | "danielle": ["dani", "danni", "danny"], 127 | "danny": ["dan", "dani", "dannie"], 128 | "dave": ["david", "davey", "davie", "davy"], 129 | "david": ["dave", "davey", "davie", "davy"], 130 | "deborah": ["deb", "debbie", "debby"], 131 | "debra": ["deb", "debbie", "debby"], 132 | "denis": ["denny"], 133 | "dennis": ["den", "denny"], 134 | "derek": ["del"], 135 | "dermot": ["jeremy"], 136 | "desmond": ["des"], 137 | "diana": ["di"], 138 | "diane": ["di"], 139 | "diarmaid": ["dermot", "jeremy"], 140 | "diarmid": ["diarmi", "dermot", "jeremy"], 141 | "diarmuid": ["dermot", "jeremy"], 142 | "dick": ["dickie"], 143 | "dolores": ["dolly"], 144 | "dominic": ["dom"], 145 | "don": ["donnie", "donny"], 146 | "donald": ["don", "donnie", "donny"], 147 | "donovan": ["donny"], 148 | "dorothy": ["dodie", "doll", "dolly", "dot"], 149 | "douglas": ["doug", "dougie"], 150 | "duncan": ["dunky"], 151 | "eben": ["ebbie"], 152 | "ebenezer": ["ebbie"], 153 | "eberhard": ["ebbe"], 154 | "ed": ["eddie", "eddy"], 155 | "edgar": ["ed", "eddie", "eddy"], 156 | "edward": ["ed", "eddie", "eddy", "ned", "ted", "teddie", "teddy"], 157 | "edwin": ["ed", "eddie", "eddy"], 158 | "elbert": ["elbie"], 159 | "eleanor": ["ellie", "nell", "nellie", "nelly"], 160 | "elias": ["eli"], 161 | "elijah": ["eli"], 162 | "elisabeth": ["beth"], 163 | "elizabeth": ["bess", "bessie", "bessy", "beth", "betsy", "bette", "betty", "ellie", "izzy", "libby", "lilibet", "liz", "lizzie", "lizzy"], 164 | "elzbieta": ["liz"], 165 | "ellen": ["nell"], 166 | "emily": ["em", "emmie", "emmy", "millie", "milly"], 167 | "emma": ["em", "emmie", "emmy"], 168 | "emmanuel": ["mannie", "manny"], 169 | "emmy": ["emmie"], 170 | "enrico": ["rico"], 171 | "ernest": ["ernie"], 172 | "esther": ["essie", "hettie", "hetty"], 173 | "ethel": ["eth"], 174 | "eugene": ["gene"], 175 | "euphemia": ["effie", "phemie"], 176 | "eva": ["evie"], 177 | "evangeline": ["evie"], 178 | "eve": ["evie"], 179 | "evelyn": ["evie", "lyn"], 180 | "ezekiel": ["zeke"], 181 | "faith": ["fay"], 182 | "fay": ["faye"], 183 | "felicity": ["fliss"], 184 | "ferdinand": ["ferd", "ferdie", "ferdy", "nandy"], 185 | "fernando": ["nando"], 186 | "fiona": ["fi"], 187 | "flora": ["flo", "florrie"], 188 | "florence": ["flo", "florrie", "flossie", "flossy", "floy"], 189 | "frances": ["fannie", "fanny", "fay", "fran", "francie", "frannie", "franny"], 190 | "francine": ["fran", "francie", "frannie", "franny"], 191 | "francis": ["fran", "frank", "frankie"], 192 | "franklin": ["frank", "frankie"], 193 | "frederick": ["fred", "freddie", "freddy"], 194 | "gabriel": ["gabby", "gabe"], 195 | "gabriela": ["gabby"], 196 | "gabriella": ["gabby"], 197 | "gabrielle": ["gabby"], 198 | "gail": ["gayle"], 199 | "gareth": ["gar", "gare", "gary"], 200 | "gary": ["gar", "gare"], 201 | "gavin": ["gav"], 202 | "geoffrey": ["geoff"], 203 | "george": ["geordie", "georgie"], 204 | "georgia": ["george"], 205 | "georgina": ["george", "georgie", "gina"], 206 | "gerald": ["gerry", "jerry"], 207 | "geraldine": ["geri", "gerri", "gerry", "jeri", "jerri", "jerry"], 208 | "gerard": ["ged", "gerry", "jerry"], 209 | "gertrude": ["gertie", "trudie", "trudy"], 210 | "gilbert": ["gil"], 211 | "gilford": ["gil"], 212 | "gillian": ["gill"], 213 | "gina": ["gena"], 214 | "ginevra": ["ginny"], 215 | "ginger": ["ging"], 216 | "gordon": ["don", "gordie", "gordy"], 217 | "grace": ["gracie"], 218 | "gregor": ["greg"], 219 | "gregory": ["greg", "gregg"], 220 | "greig": ["greg"], 221 | "giusippe": ["joe"], 222 | "gustav": ["gus"], 223 | "hallie": ["hally"], 224 | "harold": ["hal", "harry"], 225 | "harriet": ["hallie", "hally", "hattie"], 226 | "harry": ["hal"], 227 | "harvey": ["harve"], 228 | "heathcliff": ["heath"], 229 | "helen": ["nell", "nellie", "nelly"], 230 | "henricus": ["harry"], 231 | "henrietta": ["etta", "hettie", "hetty"], 232 | "henry": ["hal", "hank", "harry"], 233 | "herbert": ["herb", "herbie"], 234 | "hester": ["hettie", "hetty"], 235 | "hetty": ["hettie"], 236 | "howard": ["howie"], 237 | "hugh": ["huey", "hughie"], 238 | "humphrey": ["huffie"], 239 | "ienken": ["jill"], 240 | "ignacio": ["nacho", "nacio"], 241 | "immanuel": ["mannie", "manny"], 242 | "indiana": ["indy"], 243 | "isaac": ["ike"], 244 | "isabel": ["bel", "bell", "isy", "izzie", "izzy"], 245 | "isabella": ["bel", "bell", "bella", "isy", "izzie", "izzy"], 246 | "isabelle": ["bel", "bell", "belle", "isy", "izzie", "izzy"], 247 | "isidore": ["dore", "izzy"], 248 | "isobel": ["bel", "bell", "isy", "izzie", "izzy"], 249 | "ivan": ["van"], 250 | "jack": ["jackie", "jacko", "jacky", "jak"], 251 | "jacob": ["jake"], 252 | "jacqueline": ["jackie", "jacky", "jacqui"], 253 | "jacquelyn": ["jackie"], 254 | "james": ["jake", "jamey", "jamie", "jay", "jem", "jim", "jimbo", "jimi", "jimmer", "jimmie", "jimmy"], 255 | "jane": ["janey", "janie", "jennie", "jenny"], 256 | "janet": ["jan", "jessie"], 257 | "janice": ["jan"], 258 | "jasmine": ["jas", "jaz"], 259 | "jason": ["jace", "jay"], 260 | "jean": ["jeanie", "jeannie"], 261 | "jeannette": ["nettie"], 262 | "jedidiah": ["jed"], 263 | "jeffery": ["jeff"], 264 | "jeffrey": ["jeff"], 265 | "jemima": ["jem"], 266 | "jennifer": ["jen", "jenn", "jenni", "jennie", "jenny"], 267 | "jeremiah": ["jem", "jeremy", "jerry"], 268 | "jeremy": ["jem", "jerry", "jez"], 269 | "jerilyn": ["jeri", "jerri", "jerry"], 270 | "jerrold": ["jerry"], 271 | "jesse": ["jess"], 272 | "jessica": ["jess", "jessie"], 273 | "jessie": ["jesse"], 274 | "jill": ["jilly"], 275 | "jillian": ["jilly"], 276 | "jim": ["jimmy"], 277 | "jimmy": ["jim", "jimi"], 278 | "jo": ["jodi", "jodie", "jody"], 279 | "joan": ["jo"], 280 | "joanna": ["jo", "jojo"], 281 | "joanne": ["jojo"], 282 | "joe": ["joseph", "jo", "joey"], 283 | "johannes": ["joh"], 284 | "john": ["johnnie", "johnny", "jon"], 285 | "jonathan": ["jon", "jonty"], 286 | "joseph": ["joe", "joey"], 287 | "josephine": ["jo", "josie"], 288 | "joshua": ["josh"], 289 | "judith": ["jodi", "jodie", "jody", "judie", "judy"], 290 | "judy": ["judie"], 291 | "julia": ["jilly", "juley"], 292 | "juliana": ["julie"], 293 | "june": ["junie"], 294 | "kate": ["cate"], 295 | "katharine": ["kat"], 296 | "katherine": ["kat", "kate", "kath", "kathi", "kathie", "kathy", "kati", "katy", "kay", "kit", "kitty"], 297 | "kathryn": ["kat", "kate", "kath", "kathi", "kathie", "kathy", "kati", "katy", "kay", "kit", "kitty"], 298 | "kathleen": ["kath", "kathy"], 299 | "kathy": ["kathi", "kathie"], 300 | "katie": ["caty", "kati"], 301 | "kay": ["kaye"], 302 | "kennedy": ["ken", "kenny"], 303 | "kenneth": ["ken", "kenny"], 304 | "kerry": ["kez"], 305 | "kester": ["kit"], 306 | "kevin": ["kev"], 307 | "kimberley": ["kimmy"], 308 | "kimberly": ["kimmy"], 309 | "kipling": ["kip"], 310 | "kristina": ["kris", "krissie", "krissy"], 311 | "kristine": ["krissy"], 312 | "kurt": ["curt"], 313 | "kurtis": ["kurt"], 314 | "lafayette": ["lafe"], 315 | "laura": ["lauri", "laurie", "lorie"], 316 | "laurence": ["larry", "lauren", "laurie", "law"], 317 | "laurie": ["lauri", "lorie"], 318 | "lavinia": ["vinnie"], 319 | "lawrence": ["larry", "lauren", "laurie", "law", "lawrie"], 320 | "leo": ["lee"], 321 | "leonard": ["len", "lenny"], 322 | "leopold": ["leo"], 323 | "leroy": ["lee"], 324 | "leslie": ["les", "lez"], 325 | "leslie": ["les"], 326 | "lester": ["les"], 327 | "letitia": ["lettie", "letty", "tish", "tisha", "titty"], 328 | "lilian": ["lil"], 329 | "lillian": ["lil", "lillie", "lilly"], 330 | "lily": ["lillie", "lilly"], 331 | "linda": ["lindie", "lindy"], 332 | "lindsay": ["lindie", "lindy"], 333 | "louis": ["lou", "louie"], 334 | "louisa": ["lou", "lula", "lulu"], 335 | "louise": ["lou", "lulu"], 336 | "lucinda": ["cindy"], 337 | "lucy": ["lu", "lulu"], 338 | "luke": ["lucky"], 339 | "luzviminda": ["luz"], 340 | "lydia": ["liddy"], 341 | "lynn": ["lynne"], 342 | "madeleine": ["maddy"], 343 | "madonna": ["madge"], 344 | "magdalene": ["maddy"], 345 | "maggie": ["mags"], 346 | "mamie": ["mayme"], 347 | "marcus": ["marc"], 348 | "margaret": ["madge", "mae", "maggie", "mags", "maisie", "marge", "margie", "may", "meg", "meggie", "peg", "peggy"], 349 | "margerita": ["rita"], 350 | "marilla": ["rilla"], 351 | "mark": ["marky"], 352 | "martha": ["marty", "mattie", "matty"], 353 | "martin": ["marty"], 354 | "martina": ["marty"], 355 | "marvin": ["marv"], 356 | "mary": ["jo", "mae", "mamie", "may", "mayme", "mollie", "polly"], 357 | "matilda": ["mattie", "matty", "tillie", "tilly"], 358 | "matthew": ["mat", "matt", "matty"], 359 | "mattie": ["matty"], 360 | "maud": ["maudie"], 361 | "maude": ["maudie"], 362 | "maurice": ["mo", "moe", "mossie"], 363 | "mavis": ["mamie"], 364 | "max": ["mac", "mack", "maxie", "maxy"], 365 | "maximilian": ["max"], 366 | "maxine": ["maxie", "maxy"], 367 | "maxwell": ["max"], 368 | "megan": ["meg", "meggie"], 369 | "melanie": ["mel"], 370 | "melinda": ["mel", "mendy", "mindy"], 371 | "melissa": ["mel", "missy"], 372 | "melody": ["mel"], 373 | "melvin": ["mel"], 374 | "melvyn": ["mel"], 375 | "mervin": ["merv"], 376 | "mervyn": ["merv"], 377 | "michael": ["mick", "mickey", "micky", "mike", "mikey"], 378 | "michaela": ["mickey", "micky"], 379 | "michelle": ["micky", "shell"], 380 | "mick": ["mickey", "micky"], 381 | "mikaela": ["mickey", "micky"], 382 | "mike": ["mickey", "micky", "mikey"], 383 | "mildred": ["millie", "milly"], 384 | "millicent": ["millie", "milly"], 385 | "miranda": ["mindy", "randy"], 386 | "mitch": ["mitchell"], 387 | "mitchell": ["mitch"], 388 | "mohammed": ["mohamed", "mohammad", "mohamad"], 389 | "molly": ["mollie", "polly"], 390 | "montague": ["monty"], 391 | "montgomery": ["monty"], 392 | "morris": ["mo", "moe"], 393 | "mortimer": ["mort"], 394 | "morton": ["mort"], 395 | "moses": ["mo", "moe"], 396 | "moshe": ["moishy"], 397 | "murdoch": ["murdy"], 398 | "nancy": ["nan", "nance"], 399 | "natalie": ["nat", "talie"], 400 | "natalya": ["nat"], 401 | "natasha": ["nat", "tash", "tasha"], 402 | "nathan": ["nat", "nate"], 403 | "nathanael": ["nat", "nate"], 404 | "nathaniel": ["nat", "nate"], 405 | "nellie": ["nelly"], 406 | "newton": ["newt"], 407 | "nichola": ["nic"], 408 | "nicholas": ["nic", "nick", "nicky"], 409 | "nick": ["nicolas", "nicky"], 410 | "nicola": ["nic", "nicki", "nicky", "nikki"], 411 | "nicolas": ["nic", "nicki", "nicky", "nikki"], 412 | "nicole": ["nic", "nicki", "nicky", "nikki"], 413 | "norlaily": ["laily"], 414 | "noreen": ["norrie"], 415 | "norette": ["norrie"], 416 | "norman": ["norm"], 417 | "olive": ["ollie"], 418 | "oliver": ["oli", "ollie"], 419 | "olivia": ["livvy", "ollie"], 420 | "olwen": ["ollie"], 421 | "oswald": ["ozzie", "ozzy"], 422 | "pamela": ["pam", "pammy"], 423 | "pat": ["patrick"], 424 | "patricia": ["pat", "patsy", "patti", "patty", "tricia", "trish", "trisha", "trixie"], 425 | "patrick": ["paddy", "pat", "patsy"], 426 | "patterson": ["pat"], 427 | "patty": ["patti"], 428 | "paul": ["paulie"], 429 | "peggy": ["peg"], 430 | "penelope": ["penny"], 431 | "percy": ["percival", "perceval"], 432 | "perceval": ["perce", "percy"], 433 | "percival": ["perce", "percy"], 434 | "perry": ["peregrine"], 435 | "peregrine": ["perry"], 436 | "peter": ["pete", "petey"], 437 | "philip": ["phil", "pip"], 438 | "philippa": ["phil", "pip", "pippa"], 439 | "phillip": ["phil", "pip"], 440 | "philomena": ["phil"], 441 | "priscilla": ["prissy"], 442 | "prudence": ["prue"], 443 | "quincy": ["quin"], 444 | "quinton": ["quin"], 445 | "rachel": ["rae", "ray"], 446 | "rae": ["dannie", "ray"], 447 | "rajendra": ["raj"], 448 | "ralph": ["ralphie"], 449 | "randall": ["randy"], 450 | "randolph": ["randy"], 451 | "raphael": ["ralph", "raph"], 452 | "ray": ["rae"], 453 | "raymond": ["ray"], 454 | "rebecca": ["becca", "becki", "becky", "beki"], 455 | "regina": ["gina"], 456 | "reginald": ["reg", "reggie"], 457 | "reuben": ["rube"], 458 | "ricardo": ["rick", "rico"], 459 | "richard": ["dick", "dickey", "dickie", "dickon", "dicky", "hick", "rich", "richie", "rick", "rickey", "ricki", "rickie", "ricky"], 460 | "rickie": ["ricki"], 461 | "ricky": ["rickey", "ricki"], 462 | "robbie": ["rabbie"], 463 | "robert": ["bob", "bobbi", "bobbie", "bobby", "rabbie", "rob", "robbie", "robby"], 464 | "roberta": ["bobbi", "bobbie", "bobby", "robbi", "robby"], 465 | "rocco": ["rocky"], 466 | "roderick": ["rod"], 467 | "rodney": ["rod"], 468 | "roger": ["rog"], 469 | "ronald": ["ron", "ronnie", "ronny"], 470 | "ronnie": ["ronny"], 471 | "rose": ["rosie"], 472 | "rosemary": ["rose", "rosie"], 473 | "roxana": ["roxy"], 474 | "roxane": ["roxy"], 475 | "roxanne": ["roxy"], 476 | "rudolph": ["rudy"], 477 | "russell": ["russ"], 478 | "saffron": ["saffy"], 479 | "sally": ["sal"], 480 | "salvador": ["sal"], 481 | "samantha": ["sam", "sammi", "sammie", "sammy"], 482 | "samson": ["sam"], 483 | "samuel": ["sal", "sam", "sammie", "sammy"], 484 | "sandra": ["sandy"], 485 | "sarah": ["sadie", "sallie", "sally"], 486 | "sathamoney": ["sath"], 487 | "scott": ["scottie", "scotty"], 488 | "sebastian": ["bastian", "seb"], 489 | "sharon": ["shaz"], 490 | "shelley": ["shelly"], 491 | "shirley": ["shirl"], 492 | "shlomo": ["shloime"], 493 | "siddharth": ["sid"], 494 | "siddhartha": ["sid"], 495 | "sidney": ["sid"], 496 | "simeon": ["sim"], 497 | "simon": ["si", "sim"], 498 | "solomon": ["sol"], 499 | "spencer": ["spence"], 500 | "stacey": ["stace"], 501 | "stanford": ["stan"], 502 | "stanislas": ["stan"], 503 | "stanislav": ["stan"], 504 | "stanislaw": ["stan"], 505 | "stanley": ["stan"], 506 | "stephanie": ["stef", "steff", "steffi", "steffie", "steffy", "steph", "stephie", "steve", "stevie"], 507 | "stephen": ["steenie", "steve", "stevie"], 508 | "steven": ["steve", "stevie"], 509 | "stewart": ["stew", "stewie"], 510 | "stuart": ["stu"], 511 | "susan": ["su", "sue", "susie", "susy", "suzi", "suzie", "suzy"], 512 | "susanna": ["suze"], 513 | "suzanne": ["suze"], 514 | "sydney": ["sid", "syd"], 515 | "sylvester": ["sly"], 516 | "tallulah": ["lula"], 517 | "tammy": ["tammie"], 518 | "teddy": ["teddie"], 519 | "terence": ["tel", "terry"], 520 | "teresa": ["terri", "terrie", "terry", "tess"], 521 | "terry": ["terri", "terrie"], 522 | "thaddaeus": ["tad", "thad", "thady"], 523 | "thaddeus": ["tad", "thad", "thady"], 524 | "theodora": ["theo"], 525 | "theodore": ["ted", "teddie", "teddy", "theo"], 526 | "theresa": ["teri", "terry", "tessy"], 527 | "thomas": ["thom", "tom", "tommy"], 528 | "timon": ["tim"], 529 | "timothy": ["tim", "timmy"], 530 | "tisha": ["tish"], 531 | "tobiah": ["toby"], 532 | "tobias": ["toby"], 533 | "tracy": ["trace"], 534 | "trevor": ["trev"], 535 | "trudy": ["trudi", "trudie"], 536 | "tyler": ["ty"], 537 | "tyron": ["ty"], 538 | "tyrone": ["ty"], 539 | "tyson": ["ty"], 540 | "valda": ["val"], 541 | "valentine": ["val"], 542 | "valerie": ["val"], 543 | "valeria": ["val"], 544 | "valerius": ["val"], 545 | "vance": ["van"], 546 | "vernon": ["vern"], 547 | "victor": ["vic", "vick"], 548 | "victoria": ["vic", "vickey", "vicki", "vickie", "vicky", "vikki"], 549 | "vincent": ["vin", "vince", "vinnie"], 550 | "viola": ["vi"], 551 | "violet": ["vi"], 552 | "virginia": ["ging", "ginny"], 553 | "vivian": ["viv"], 554 | "wallace": ["wally"], 555 | "walter": ["wally", "walt"], 556 | "wesley": ["wes"], 557 | "wilber": ["wil", "will"], 558 | "wilbur": ["wil", "will"], 559 | "wilford": ["wil", "will"], 560 | "wilfred": ["fred", "wil", "wilf", "will"], 561 | "wilhelmina": ["minnie", "willie"], 562 | "willard": ["wil", "will"], 563 | "william": ["bill", "billy", "will", "willie", "willy"], 564 | "winifred": ["winnie"], 565 | "winston": ["winnie"], 566 | "woodrow": ["woody"], 567 | "zachariah": ["zack", "zak"], 568 | "zachary": ["zach", "zack", "zak"], 569 | "zedekiah": ["zed"] 570 | } 571 | -------------------------------------------------------------------------------- /src/nickToName.json: -------------------------------------------------------------------------------- 1 | { 2 | "ab": ["abel", "abiel", "abner", "abraham", "abram"], 3 | "abby": ["abigail"], 4 | "abe": ["abel", "abraham"], 5 | "ada": ["adaline", "adeline"], 6 | "addy": ["adaline", "adelaide", "adeline", "adelphia"], 7 | "adele": ["adelaide", "adelphia"], 8 | "aggy": ["agatha", "agnes", "augusta", "augustina"], 9 | "al": ["alan", "albert", "aldo", "alexander", "alfonse", "alfred", "allan", "allen", "alonzo"], 10 | "albert": ["elbert"], 11 | "alex": ["alexander", "alexandra"], 12 | "alfy": ["alfreda"], 13 | "alice": ["lisa"], 14 | "alla": ["alexandra"], 15 | "allie": ["aileen", "alberta", "alice", "alicia", "allisandra", "almena"], 16 | "amelia": ["parmelia"], 17 | "amy": ["amelia"], 18 | "andy": ["anderson", "andrew"], 19 | "ann": ["antoinette", "antonia", "christiana", "nancy", "roseann", "roseanna", "roseanne", "roxanna", "roxanne"], 20 | "anna": ["hannah"], 21 | "annie": ["ann", "anne"], 22 | "ara": ["arabella", "arabelle"], 23 | "archie": ["archibald"], 24 | "arly": ["arlene"], 25 | "arry": ["arabella", "arabelle", "armena"], 26 | "art": ["arthur"], 27 | "asa": ["asahel", "asaph"], 28 | "assene": ["asenath"], 29 | "august": ["augustine", "augustus"], 30 | "austin": ["augustine", "augustus"], 31 | "aze": ["azariah"], 32 | "bab": ["barbara"], 33 | "babs": ["barbara"], 34 | "barby": ["barbara"], 35 | "barney": ["barnabas", "bernard"], 36 | "bart": ["bartholomew"], 37 | "bartel": ["bartholomew"], 38 | "bat": ["bartholomew"], 39 | "bea": ["beatrice"], 40 | "becca": ["rebecca"], 41 | "beck": ["rebecca"], 42 | "becky": ["rebecca"], 43 | "bela": ["william"], 44 | "bell": ["isabel", "william"], 45 | "bella": ["arabella", "arabelle", "isabel", "isabella", "isabelle"], 46 | "belle": ["arabella", "arabelle", "belinda", "isabel", "isabella", "isabelle", "rosabel", "rosabella"], 47 | "ben": ["benedict", "benedict", "benjamin"], 48 | "benjy": ["benjamin"], 49 | "bennie": ["benedict", "benjamin"], 50 | "berney": ["bernard"], 51 | "bernie": ["bernard"], 52 | "bert": ["albert", "alberta", "bertha", "delbert", "gilbert", "gilbert", "herbert", "hubert", "hubert", "norbert", "roberta", "wilber"], 53 | "bertie": ["alberta", "bertha", "roberta"], 54 | "bess": ["elizabeth"], 55 | "bessie": ["elizabeth"], 56 | "beth": ["elizabeth"], 57 | "betsy": ["elizabeth"], 58 | "betty": ["elizabeth"], 59 | "bias": ["tobias"], 60 | "biddie": ["bridget"], 61 | "biddy": ["bridget"], 62 | "bill": ["william"], 63 | "billy": ["william"], 64 | "birdie": ["bertha", "roberta"], 65 | "bob": ["robert"], 66 | "bobbie": ["barbara", "roberta", "roberta"], 67 | "bobby": ["robert", "rodger", "roger"], 68 | "brad": ["bradford"], 69 | "brady": ["broderick"], 70 | "bridgie": ["bridget"], 71 | "bridie": ["bridget"], 72 | "brina": ["sabrina"], 73 | "brody": ["broderick"], 74 | "cal": ["calvin"], 75 | "cam": ["cameron"], 76 | "cammie": ["camille"], 77 | "carl": ["charles"], 78 | "carol": ["carolann", "caroline"], 79 | "carole": ["carolann", "caroline"], 80 | "carrie": ["carol", "caroline", "carolyn"], 81 | "cassandra": ["sandra"], 82 | "cassie": ["carol", "caroline", "carolyn", "cassandra", "catherine", "cathleen", "katherine", "kathleen"], 83 | "cathy": ["catherine", "cathleen", "katherine", "kathleen"], 84 | "ced": ["cedric"], 85 | "celia": ["cecilia"], 86 | "cene": ["cyrenius"], 87 | "chan": ["chauncey"], 88 | "char": ["charlotte"], 89 | "charlie": ["charles"], 90 | "chet": ["chester"], 91 | "chick": ["charles"], 92 | "chris": ["christa", "christian", "christian", "christiana", "christina", "christine", "christopher", "kristen", "kristin", "kristine", "kristy"], 93 | "chrissy": ["christine"], 94 | "christy": ["christiana", "christina", "kristine"], 95 | "chuck": ["charles", "charles"], 96 | "cilla": ["priscilla"], 97 | "cille": ["lucille"], 98 | "cindy": ["cynthia", "cynthia", "lucinda"], 99 | "cintha": ["cynthia"], 100 | "cissy": ["cecilia", "clarissa", "frances", "priscilla"], 101 | "claas": ["nicholas"], 102 | "claes": ["nicholas"], 103 | "clair": ["clarence"], 104 | "clara": ["clarinda", "clarissa"], 105 | "clare": ["clarence"], 106 | "clem": ["clement", "clement"], 107 | "cliff": ["clifford", "clifton"], 108 | "clum": ["columbus"], 109 | "con": ["conrad", "cornelius"], 110 | "connie": ["constance"], 111 | "conny": ["conrad", "cornelius"], 112 | "cordy": ["cordelia"], 113 | "cornie": ["cornelia"], 114 | "corny": ["cornelia", "cornelius"], 115 | "court": ["courtney"], 116 | "crissy": ["christiana", "christina", "christine", "kristine"], 117 | "curt": ["courtney", "curtis"], 118 | "cy": ["cyrus"], 119 | "dahl": ["dal", "dalton"], 120 | "dan": ["daniel", "sheridan"], 121 | "danny": ["daniel", "sheridan"], 122 | "darkey": ["dorcus"], 123 | "darry": ["darlene"], 124 | "dave": ["david"], 125 | "davey": ["david"], 126 | "day": ["david"], 127 | "deb": ["debora", "deborah", "debra"], 128 | "debbie": ["debora", "deborah", "debra"], 129 | "debby": ["debora", "deborah"], 130 | "dee": ["delores"], 131 | "del": ["delbert"], 132 | "delia": ["adaline", "adeline", "cordelia", "fidelia"], 133 | "dell": ["adaline", "adelaide", "adeline", "adelphia", "delores"], 134 | "della": ["adelaide", "deliverance", "delores"], 135 | "delly": ["deliverance"], 136 | "delphia": ["adelphia"], 137 | "denny": ["dennis", "dennison"], 138 | "diah": ["obadiah", "zedediah"], 139 | "dicie": ["dicey"], 140 | "dick": ["richard"], 141 | "dickie": ["richard"], 142 | "dickon": ["richard"], 143 | "dicky": ["richard"], 144 | "dilly": ["deliverance"], 145 | "dina": ["geraldine"], 146 | "dite": ["epaphroditius"], 147 | "ditus": ["epaphroditius"], 148 | "dob": ["robert"], 149 | "dobbin": ["robert"], 150 | "dolly": ["dorothy"], 151 | "dolph": ["randolph", "rudolph", "rudolphus"], 152 | "dom": ["domenic", "dominic"], 153 | "don": ["donald"], 154 | "donnie": ["donald"], 155 | "donny": ["donald"], 156 | "dony": ["donald"], 157 | "dora": ["isadora"], 158 | "dortha": ["dorothy"], 159 | "dot": ["dorothy"], 160 | "dotty": ["dorothy"], 161 | "drew": ["andrew", "woodrow"], 162 | "dyce": ["epaphroditius"], 163 | "dyche": ["epaphroditius"], 164 | "dyer": ["obadiah", "zedediah"], 165 | "eb": ["abel", "ebenezer"], 166 | "ebbie": ["abel", "ebenezer"], 167 | "eben": ["ebenezer"], 168 | "ed": ["edgar", "edmond", "edmund", "edmund", "eduardo", "edward", "edwin"], 169 | "eddie": ["edgar", "edmond", "edmund", "eduardo", "edward", "edwin"], 170 | "eddy": ["edgar", "edmond", "edmund", "eduardo", "edward", "edwin"], 171 | "edie": ["edith", "edith", "edyth", "edythe"], 172 | "edye": ["edith", "edyth", "edythe"], 173 | "elaine": ["eleanor"], 174 | "eli": ["elias", "elijah", "elisha"], 175 | "eliza": ["elizabeth", "louisa", "louise"], 176 | "ella": ["gabriella", "gabrielle", "helen", "helene", "luella"], 177 | "ellen": ["eleanor", "eleanor", "helen", "helene"], 178 | "ellie": ["eleanor", "elmira", "helen", "helene"], 179 | "elly": ["elmira"], 180 | "eloise": ["heloise"], 181 | "elouise": ["heloise"], 182 | "elsey": ["ellswood", "elsie", "elswood", "elze"], 183 | "elsie": ["alice", "alicia"], 184 | "em": ["emeline"], 185 | "emily": ["amelia", "emeline"], 186 | "emma": ["emeline", "emily"], 187 | "emmy": ["emeline", "emily"], 188 | "eph": ["ephraim"], 189 | "eppa": ["epaphroditius"], 190 | "eric": ["derrick"], 191 | "erin": ["aaron"], 192 | "ernie": ["ernest"], 193 | "essa": ["vanessa"], 194 | "essy": ["estella", "estelle"], 195 | "esther": ["hester"], 196 | "etta": ["henrietta", "loretta"], 197 | "etty": ["henrietta"], 198 | "eva": ["evaline"], 199 | "eve": ["evaline", "genevieve"], 200 | "ez": ["ezekiel", "ezra"], 201 | "fanny": ["frances"], 202 | "fate": ["lafayette"], 203 | "fay": ["faith"], 204 | "felty": ["feltie", "valentine"], 205 | "ferdie": ["ferdinand"], 206 | "field": ["winfield"], 207 | "fina": ["josephine"], 208 | "flo": ["florence"], 209 | "flora": ["florence"], 210 | "flossy": ["florence"], 211 | "ford": ["bradford", "clifford"], 212 | "fran": ["frances", "francine", "francis", "francis", "franklin"], 213 | "francie": ["frances", "francine"], 214 | "frank": ["francis", "franklin", "franklind"], 215 | "frankie": ["frances", "francis"], 216 | "franky": ["veronica"], 217 | "frannie": ["frances", "francine"], 218 | "franniey": ["frances", "francine"], 219 | "fred": ["alfred", "bill", "billy", "ferdinand", "frederick", "frederick", "frieda", "wilfred", "will", "willie", "winnifred"], 220 | "freda": ["alfreda", "fredericka"], 221 | "freddie": ["ferdinand", "frederick", "frieda", "winifred", "winnifred"], 222 | "freddy": ["alfred", "alfreda", "ferdinand", "frederick", "frederick", "fredericka", "frieda", "winnifred"], 223 | "frieda": ["alfreda", "fredericka"], 224 | "fritz": ["frederick"], 225 | "frony": ["veronica"], 226 | "gabby": ["gabriel", "gabriella", "gabrielle"], 227 | "gabe": ["gabriel"], 228 | "gail": ["abigail", "abigail"], 229 | "gatsy": ["augusta", "augustina"], 230 | "gene": ["eugene"], 231 | "geoff": ["geoffrey", "jeffrey"], 232 | "gerrie": ["geraldine"], 233 | "gerry": ["gerald", "geraldine"], 234 | "gert": ["gertrude"], 235 | "gertie": ["gertrude"], 236 | "gil": ["gilbert"], 237 | "gina": ["regina"], 238 | "ginger": ["virginia"], 239 | "ginny": ["virginia"], 240 | "gretta": ["margaret", "margaretta"], 241 | "gum": ["montgomery"], 242 | "gus": ["august", "augustine", "augustine", "augustus"], 243 | "gussie": ["augusta", "augustina"], 244 | "gwen": ["gwendolyn"], 245 | "hal": ["harold", "henry"], 246 | "hallie": ["mahala"], 247 | "hank": ["henrietta", "henry"], 248 | "hannah": ["joanna", "johannah", "susan", "susannah"], 249 | "harry": ["harold", "henry"], 250 | "hattie": ["harriet"], 251 | "heidi": ["adelaide"], 252 | "herb": ["herbert"], 253 | "hermie": ["hermione"], 254 | "hessy": ["hester"], 255 | "hetty": ["hester", "mehitabel"], 256 | "hez": ["hezekiah"], 257 | "hiel": ["jehiel"], 258 | "hipsie": ["hephsibah", "hepsibah"], 259 | "hitty": ["mehitabel"], 260 | "hob": ["robert"], 261 | "hobkin": ["robert"], 262 | "hodge": ["rodger", "roger"], 263 | "hop": ["hopkins"], 264 | "hopp": ["hopkins"], 265 | "horry": ["horace"], 266 | "hub": ["hubert"], 267 | "hugh": ["hubert"], 268 | "hy": ["hezekiah", "hiram"], 269 | "ib": ["isabel", "isabella", "isabelle"], 270 | "iggy": ["ignatius"], 271 | "ike": ["isaac"], 272 | "ina": ["lavina", "lavinia"], 273 | "inez": ["agnes"], 274 | "irv": ["irving"], 275 | "issy": ["isabel", "isabella", "isabelle", "isadora"], 276 | "izzy": ["isidore"], 277 | "jaap": ["jacob"], 278 | "jack": ["john"], 279 | "jacob": ["jacobus"], 280 | "jake": ["jacob"], 281 | "jamie": ["benjamin", "james"], 282 | "jan": ["janet", "janet", "janice"], 283 | "jane": ["jean", "jeanne", "virginia"], 284 | "janet": ["jeanette"], 285 | "janie": ["jane"], 286 | "jay": ["jacob", "jacob"], 287 | "jean": ["genevieve", "jane", "jeanette"], 288 | "jeannie": ["jean", "jeanne"], 289 | "jed": ["jedidiah"], 290 | "jeff": ["geoffrey", "jefferson", "jeffrey", "jeffrey"], 291 | "jem": ["james"], 292 | "jennie": ["jane", "jennifer", "virginia"], 293 | "jenny": ["genevieve"], 294 | "jereme": ["jeremiah"], 295 | "jerry": ["gerald", "geraldine", "jeremiah"], 296 | "jessie": ["jane", "janet", "jeanette", "jessica"], 297 | "jill": ["julia"], 298 | "jim": ["james"], 299 | "jimmie": ["james"], 300 | "jimmy": ["james"], 301 | "jo": ["joan", "joann", "joanna", "joanne", "johanna", "josephine"], 302 | "joan": ["joanna", "johannah"], 303 | "jock": ["john"], 304 | "jody": ["joanna", "johannah", "joseph", "josephine"], 305 | "joe": ["joseph"], 306 | "joey": ["joseph", "josephine"], 307 | "john": ["jon", "jonathan"], 308 | "johnny": ["john"], 309 | "jos": ["joseph", "joshua", "josiah"], 310 | "josey": ["josephine"], 311 | "josh": ["joshua"], 312 | "joy": ["joyce"], 313 | "jr": ["junior"], 314 | "jud": ["judson"], 315 | "jule": ["julian", "julias"], 316 | "julie": ["julia"], 317 | "june": ["junior"], 318 | "junie": ["junior"], 319 | "k": ["c.", "casey", "kasey"], 320 | "kat": ["katelin", "katelyn", "katherine"], 321 | "kate": ["katelin", "katelyn", "katherine"], 322 | "katie": ["katelin", "katelyn", "katherine"], 323 | "kathy": ["catherine", "cathleen", "katherine", "kathleen", "kathleen", "kathryn"], 324 | "katy": ["catherine", "cathleen", "katherine", "kathleen"], 325 | "kay": ["catherine", "cathleen", "katelin", "katelyn", "katherine", "kathleen"], 326 | "kaye": ["katelin", "katelyn", "katherine"], 327 | "ken": ["kendall", "kenneth", "kent"], 328 | "kendrick": ["kenneth", "kent"], 329 | "kenny": ["kendall", "kenneth", "kent"], 330 | "kiah": ["hezekiah"], 331 | "kim": ["kimberley", "kimberly"], 332 | "king": ["kingsley", "kingston"], 333 | "kit": ["catherine", "cathleen", "christian", "christopher", "katherine", "kathleen"], 334 | "kittie": ["catherine", "cathleen", "katherine", "kathleen"], 335 | "kizza": ["keziah"], 336 | "kizzie": ["keziah"], 337 | "kris": ["christiana", "christina", "christine", "kristine"], 338 | "kristy": ["christiana", "christina", "christine", "kristine"], 339 | "l": [".r.leroy"], 340 | "laffie": ["lafayette"], 341 | "lanna": ["eleanor"], 342 | "lanny": ["roland"], 343 | "larry": ["laurence", "lawrence"], 344 | "lazar": ["eleazer"], 345 | "leafa": ["relief"], 346 | "lee": ["elias", "lenora", "leroy", "levi", "shirley"], 347 | "leet": ["philetus"], 348 | "left": ["eliphalet"], 349 | "lem": ["lemuel"], 350 | "len": ["leonard"], 351 | "lena": ["adaline", "adeline", "aileen", "arlene", "catherine", "cathleen", "darlene", "evaline", "helen", "helene", "katherine", "kathleen", "madeline", "magdelina"], 352 | "lenny": ["leonard"], 353 | "lenora": ["eleanor"], 354 | "leo": ["leonard"], 355 | "leon": ["leonard", "napoleon"], 356 | "les": ["leslie", "lester"], 357 | "lettice": ["letitia"], 358 | "lettie": ["letitia"], 359 | "lias": ["elias"], 360 | "lib": ["elizabeth"], 361 | "libby": ["elizabeth"], 362 | "lige": ["elijah"], 363 | "lil": ["lillah", "lillian"], 364 | "lilly": ["lillah", "lillian"], 365 | "lily": ["lillah"], 366 | "lina": ["paula", "paulina"], 367 | "linda": ["belinda", "melinda", "philinda", "rosalinda", "rosalyn"], 368 | "lindy": ["linda", "lyndon", "melinda", "melinda", "philinda"], 369 | "lineau": ["leonard"], 370 | "link": ["lincoln"], 371 | "lisa": ["alice", "alicia", "elizabeth", "melissa"], 372 | "lish": ["elisha"], 373 | "lissa": ["melissa"], 374 | "livia": ["olive", "olivia"], 375 | "liz": ["elizabeth"], 376 | "liza": ["elizabeth"], 377 | "lizzie": ["elizabeth"], 378 | "lois": ["heloise", "louisa", "louise"], 379 | "lola": ["delores"], 380 | "lolly": ["delores", "lillah", "lillian"], 381 | "lon": ["alonzo", "laurence", "lawrence"], 382 | "lonny": ["laurence", "lawrence"], 383 | "lonzo": ["alonzo"], 384 | "loren": ["lorenzo"], 385 | "lorne": ["laurence", "lawrence"], 386 | "lorrie": ["loretta", "lorraine"], 387 | "lorry": ["laurence", "lawrence"], 388 | "lotta": ["charlotte"], 389 | "lottie": ["charlotte"], 390 | "lou": ["louisa", "louise", "lucille", "lucinda"], 391 | "louise": ["elouise", "lois"], 392 | "lu": ["lucille", "lucinda", "luella"], 393 | "lucy": ["lucille", "lucinda"], 394 | "luke": ["lucas", "lucias", "luther"], 395 | "lula": ["luella"], 396 | "lyddy": ["lidia", "lydia"], 397 | "lynn": ["carol", "caroline", "carolyn", "linda", "lyndon", "melinda", "philinda"], 398 | "mabel": ["mehitabel"], 399 | "maddy": ["madeline"], 400 | "madge": ["madeline", "magdelina", "margaret", "margaretta"], 401 | "mae": ["mary"], 402 | "magda": ["madeline", "magdelina"], 403 | "maggie": ["madeline", "margaret", "margaretta"], 404 | "maggy": ["margaret"], 405 | "mamie": ["mary"], 406 | "manda": ["amanda"], 407 | "mandy": ["amanda", "miranda"], 408 | "manny": ["emanuel"], 409 | "manuel": ["emanuel"], 410 | "marge": ["margaret", "margaretta"], 411 | "margery": ["margaret", "margaretta"], 412 | "margie": ["margaret", "margaret", "margaretta", "marjorie"], 413 | "margy": ["margaret", "marjorie"], 414 | "mark": ["marcus"], 415 | "marty": ["martha", "martin"], 416 | "marv": ["marvin"], 417 | "mat": ["martha"], 418 | "matt": ["matthew", "matthias"], 419 | "mattie": ["martha", "matthew"], 420 | "matty": ["matilda", "matthew"], 421 | "maud": ["matilda"], 422 | "mees": ["bartholomew"], 423 | "meg": ["margaret", "margaretta"], 424 | "mel": ["amelia", "melinda", "melissa"], 425 | "melia": ["parmelia"], 426 | "melissa": ["lisa"], 427 | "mena": ["almena", "armena"], 428 | "merv": ["mervyn"], 429 | "meus": ["bartholomew"], 430 | "micah": ["michael"], 431 | "mick": ["michael"], 432 | "mickey": ["michelle"], 433 | "micky": ["michael"], 434 | "midge": ["margaret", "margaretta"], 435 | "mike": ["michael"], 436 | "mikey": ["michael"], 437 | "millie": ["amelia", "camille", "emily"], 438 | "milly": ["emeline", "melissa", "mildred", "millicent", "parmelia"], 439 | "mima": ["jemima"], 440 | "mimi": ["miriam"], 441 | "mina": ["wilhelmina"], 442 | "mindy": ["melinda"], 443 | "minnie": ["minerva", "wilhelmina"], 444 | "mira": ["elmira", "miranda"], 445 | "missy": ["melissa", "millicent"], 446 | "mitch": ["mitchell"], 447 | "mitty": ["mehitabel", "submit"], 448 | "mitzi": ["mary", "miriam"], 449 | "molly": ["mary"], 450 | "monty": ["lamont", "montgomery"], 451 | "morey": ["maurice", "morris", "seymour"], 452 | "nabby": ["abigail"], 453 | "nace": ["ignatius"], 454 | "naldo": ["reginald", "ronald"], 455 | "nan": ["ann", "anne", "hannah", "nancy", "nancy"], 456 | "nana": ["ann", "anne"], 457 | "nancy": ["ann", "anne"], 458 | "nanny": ["ann", "anne", "hannah"], 459 | "nap": ["napoleon"], 460 | "nappy": ["napoleon"], 461 | "nat": ["nathan", "nathaniel"], 462 | "nate": ["ignatius", "nathan", "nathaniel"], 463 | "nathan": ["jon", "jonathan", "nathaniel"], 464 | "natius": ["ignatius"], 465 | "natty": ["asenath", "natalie", "nathaniel"], 466 | "ned": ["edmund", "edward", "edwin"], 467 | "nelia": ["cornelia"], 468 | "nelle": ["cornelia"], 469 | "nelly": ["cornelia", "eleanor"], 470 | "nessa": ["agnes", "vanessa"], 471 | "netta": ["antoinette", "antonia"], 472 | "nettie": ["henrietta", "jeanette", "juanita", "natalie"], 473 | "nib": ["isabel", "isabella", "isabelle"], 474 | "nibby": ["isabel", "isabella", "isabelle"], 475 | "nick": ["nicholas"], 476 | "niel": ["cornelius"], 477 | "nita": ["juanita"], 478 | "nollie": ["olive", "olivia"], 479 | "nonie": ["joan", "johannah"], 480 | "nora": ["eleanor", "lenora"], 481 | "norby": ["norbert"], 482 | "obed": ["obadiah"], 483 | "obie": ["obadiah"], 484 | "ollie": ["olive", "oliver", "olivia"], 485 | "olph": ["rudolph", "rudolphus"], 486 | "orlando": ["roland"], 487 | "ossy": ["oswald"], 488 | "ozzy": ["oswald"], 489 | "paddy": ["patrick"], 490 | "pam": ["pamela"], 491 | "pat": ["patience", "patricia", "patrick"], 492 | "pate": ["patrick", "peter"], 493 | "patsy": ["martha", "patricia", "patrick"], 494 | "patty": ["martha", "patience", "patricia"], 495 | "peg": ["margaret", "margaretta"], 496 | "peggy": ["margaret", "margaret", "margaretta"], 497 | "penny": ["penelope"], 498 | "percy": ["percival"], 499 | "perry": ["pelegrine"], 500 | "pete": ["peter", "peter", "peter"], 501 | "peter": ["patrick"], 502 | "phena": ["tryphena"], 503 | "phil": ["philetus", "philip", "phillip", "phillip"], 504 | "philly": ["adelphia"], 505 | "polly": ["mary", "paula", "paulina"], 506 | "pres": ["prescott"], 507 | "prissy": ["priscilla"], 508 | "prudy": ["prudence"], 509 | "prue": ["prudence"], 510 | "rafa": ["rafaela"], 511 | "ralph": ["raphael"], 512 | "randy": ["miranda", "randolph"], 513 | "ray": ["raymond", "raymond", "raymond"], 514 | "reba": ["rebecca"], 515 | "reg": ["reginald"], 516 | "reggie": ["regina", "reginald"], 517 | "rena": ["irene", "serena"], 518 | "renius": ["cyrenius"], 519 | "renny": ["reginald"], 520 | "retta": ["henrietta", "loretta"], 521 | "riah": ["azariah", "uriah"], 522 | "rich": ["aldrich", "richard"], 523 | "riche": ["aldrich"], 524 | "rick": ["broderick", "cedric", "derrick", "derrick", "eric", "ricardo", "richard", "richard", "richard"], 525 | "ricka": ["fredericka"], 526 | "ricky": ["broderick", "cedric", "derrick", "eric", "ricardo", "richard", "richard"], 527 | "rita": ["margaret", "margaretta"], 528 | "rob": ["robert", "robert"], 529 | "robbie": ["robert"], 530 | "robby": ["robert"], 531 | "robin": ["rodger", "roger"], 532 | "rod": ["rodger", "roger"], 533 | "roge": ["rodger", "roger"], 534 | "rolf": ["rudolph", "rudolphus"], 535 | "rollo": ["roland"], 536 | "rolly": ["roland"], 537 | "ron": ["aaron", "cameron", "cameron", "ronald", "ronald", "ronald", "veronica"], 538 | "ronie": ["veronica"], 539 | "ronna": ["veronica"], 540 | "ronnie": ["aaron", "veronica", "veronica"], 541 | "ronny": ["cameron", "ronald", "ronald", "ronald"], 542 | "rosa": ["rosabel", "rosabella", "rosalinda", "rosalyn"], 543 | "rose": ["rosabel", "rosabella", "rosalinda", "rosalyn", "roseann", "roseanna", "roxanna", "roxanne"], 544 | "rosie": ["roseann", "roseanna"], 545 | "roxie": ["roxanna", "roxanne"], 546 | "roy": ["leroy"], 547 | "roz": ["rosabel", "rosabella", "rosalinda", "rosalyn", "roseann", "roseanna"], 548 | "rube": ["reuben"], 549 | "rudy": ["rudolph", "rudolphus"], 550 | "rupert": ["rodger", "roger"], 551 | "russ": ["russell", "russell"], 552 | "rusty": ["russell"], 553 | "sadie": ["sarah"], 554 | "sal": ["solomon"], 555 | "sally": ["sarah"], 556 | "salmon": ["solomon"], 557 | "sam": ["samuel", "samuel"], 558 | "sammy": ["samuel", "samuel"], 559 | "sandra": ["alexandra", "cassandra"], 560 | "sandy": ["alexander", "alexandra", "cassandra", "sandra"], 561 | "saul": ["solomon"], 562 | "scott": ["prescott"], 563 | "scotty": ["prescott"], 564 | "see": ["seymour"], 565 | "sene": ["asenath"], 566 | "serene": ["cyrenius"], 567 | "shel": ["shelton"], 568 | "shelly": ["rachel", "shelton"], 569 | "sher": ["sheridan"], 570 | "sherry": ["charlotte", "shirley"], 571 | "shirl": ["shirley"], 572 | "si": ["silas", "simeon", "simon", "sylvester"], 573 | "sid": ["sidney"], 574 | "sion": ["simeon", "simon"], 575 | "sis": ["frances"], 576 | "sly": ["sylvester"], 577 | "smitty": ["smith"], 578 | "sol": ["solomon"], 579 | "solly": ["solomon"], 580 | "sonny": ["jefferson", "judson"], 581 | "sophie": ["sophia"], 582 | "stella": ["estella", "estelle"], 583 | "steph": ["stephen", "steven"], 584 | "steve": ["stephan", "stephen", "steven"], 585 | "stu": ["stuart"], 586 | "sue": ["susan", "susannah"], 587 | "sukey": ["susan", "susannah"], 588 | "sully": ["sullivan"], 589 | "susie": ["susan", "susannah"], 590 | "suzie": ["susan"], 591 | "swene": ["cyrenius"], 592 | "sy": ["sylvester"], 593 | "syd": ["sidney"], 594 | "syl": ["sylvester"], 595 | "tabby": ["tabitha"], 596 | "ted": ["edmund", "edward", "theodore", "theodore"], 597 | "teddy": ["edward", "theodore", "theodore"], 598 | "terry": ["terence", "teresa", "theresa"], 599 | "tess": ["theresa"], 600 | "tessa": ["theresa"], 601 | "tessie": ["theresa"], 602 | "thad": ["thaddeus"], 603 | "than": ["nathaniel"], 604 | "theo": ["theodore"], 605 | "thias": ["matthew", "matthias"], 606 | "thirza": ["theresa"], 607 | "thom": ["thomas", "thomas"], 608 | "thursa": ["theresa"], 609 | "thys": ["matthew", "matthias"], 610 | "tibbie": ["isabel", "isabella", "isabelle"], 611 | "tilly": ["matilda"], 612 | "tim": ["timothy", "timothy", "timothy"], 613 | "timmy": ["timothy", "timothy", "timothy"], 614 | "tina": ["augusta", "augustina", "christina", "christina", "christiana", "christine", "kristine", "martina"], 615 | "tish": ["letitia"], 616 | "titia": ["letitia"], 617 | "toby": ["tobias"], 618 | "tom": ["thom", "thomas", "thomas", "thomas"], 619 | "tommy": ["thom", "thomas", "thomas", "thomas"], 620 | "tony": ["anthony", "antoinette", "antonia", "clifton", "shelton"], 621 | "torie": ["victoria"], 622 | "tory": ["victoria"], 623 | "tracy": ["theresa"], 624 | "tricia": ["patricia"], 625 | "trina": ["catherine", "cathleen", "katherine", "kathleen"], 626 | "trisha": ["beatrice"], 627 | "trix": ["beatrice"], 628 | "trixie": ["beatrice"], 629 | "trudy": ["gertrude"], 630 | "val": ["valeri", "valerie", "valerie", "valerie"], 631 | "van": ["sullivan"], 632 | "vanna": ["vanessa"], 633 | "vessie": ["sylvester"], 634 | "vester": ["sylvester"], 635 | "vet": ["sylvester"], 636 | "vic": ["victor", "victoria", "vincent", "vincenzo"], 637 | "vicki": ["victoria"], 638 | "vicky": ["victoria"], 639 | "vin": ["calvin", "vincent", "vincenzo"], 640 | "vina": ["lavina", "lavinia"], 641 | "vince": ["vincent"], 642 | "viney": ["lavina", "lavinia"], 643 | "vinnie": ["vincent", "vincenzo"], 644 | "vinny": ["calvin", "vincent", "vincenzo", "vinson"], 645 | "virgy": ["virginia"], 646 | "vonna": ["yvonne"], 647 | "vonnie": ["veronica"], 648 | "waldo": ["oswald"], 649 | "wally": ["wallace", "walter"], 650 | "walt": ["walter"], 651 | "wash": ["washington"], 652 | "wendy": ["gwendolyn"], 653 | "wilber": ["gilbert"], 654 | "will": ["wilber", "wilfred", "william", "wilson"], 655 | "willie": ["wilbur", "wilfred", "wilhelmina", "william", "wilson"], 656 | "willy": ["wilbur", "william", "wilson"], 657 | "wilma": ["wilhelmina"], 658 | "win": ["edwin", "winfield"], 659 | "winnet": ["winifred"], 660 | "winnie": ["winifred", "winnifred"], 661 | "winny": ["winfield", "winnifred"], 662 | "wood": ["woodrow"], 663 | "woody": ["elwood", "woodrow"], 664 | "zach": ["zachariah"], 665 | "zachy": ["zachariah"], 666 | "zeb": ["zebedee"], 667 | "zed": ["zedediah"], 668 | "zeke": ["ezekiel", "isaac", "zachariah"], 669 | "zeph": ["zephaniah"], 670 | "zolly": ["solomon"] 671 | } 672 | -------------------------------------------------------------------------------- /test/getAliases.test.js: -------------------------------------------------------------------------------- 1 | import { getAliases } from '../src/index.js'; 2 | 3 | test('includes the original full name', () => { 4 | let list = getAliases("William Randolph Hearst"); 5 | expect(list).toContain("william randolph hearst"); 6 | }); 7 | 8 | test('abbreviates tussenvoegsels', () => { 9 | let list = getAliases("Jan Jacob Van Den Heiden"); 10 | expect(list).toContain("jan jacob vd heiden"); 11 | }); 12 | 13 | test('Does not transpose a single name', () => { 14 | let list = getAliases("Dave"); 15 | expect(list).not.toContain(", Dave"); 16 | expect(list).not.toContain(", dave"); 17 | }); 18 | 19 | test('Joseph to Joe', () => { 20 | let list = getAliases("joseph biden"); 21 | expect(list).toContain("joe biden"); 22 | }); 23 | test('Joe to Joseph', () => { 24 | let list = getAliases("joe biden"); 25 | expect(list).toContain("joseph biden"); 26 | }); 27 | test('Mike to Michael', () => { 28 | let list = getAliases("mike"); 29 | expect(list).toContain("michael"); 30 | }); 31 | test('Mikey to Michael', () => { 32 | let list = getAliases("mikey"); 33 | expect(list).toContain("michael"); 34 | }); 35 | test('Michael to Mike', () => { 36 | let list = getAliases("michael"); 37 | expect(list).toContain("mike"); 38 | }); 39 | test('Dave to David', () => { 40 | let list = getAliases("dave biden"); 41 | expect(list).toContain("david biden"); 42 | }); 43 | -------------------------------------------------------------------------------- /test/index.cjs: -------------------------------------------------------------------------------- 1 | const Alias = require( '../dist/main.cjs'); 2 | 3 | let list = Alias.getAliases("William Randolph Hearst"); 4 | console.log(list); 5 | 6 | let list1 = Alias.getAliases("Jan Jacob Van den Heiden"); 7 | console.log(list1); 8 | 9 | let list2 = Alias.getAliases("Alex Biden"); 10 | console.log(list2); 11 | -------------------------------------------------------------------------------- /webpack.config.js: -------------------------------------------------------------------------------- 1 | import path from 'path'; 2 | 3 | const config = { 4 | mode: 'production', 5 | entry: './src/index.js', 6 | resolve: { 7 | extensions: ['.js'], 8 | }, 9 | module: { 10 | rules: [ 11 | { 12 | test: /\.js?$/, 13 | use: 'babel-loader', 14 | }, 15 | ], 16 | }, 17 | target: 'node', 18 | output: { 19 | path: path.resolve('dist'), 20 | filename: 'main.js', 21 | globalObject: 'this', 22 | library: { 23 | name: 'aliasGenerator', 24 | type: 'umd', 25 | }, 26 | } 27 | }; 28 | 29 | export default config; 30 | --------------------------------------------------------------------------------