Convert inconsistent country names and codes into ISO 3166-1 alpha-2.
npm install country-to-isoConvert inconsistent country names and codes into ISO 3166-1 alpha-2 or ISO 3166-1 alpha-3.
The aim is support English only but some native languages are included.

``bash`
npm i country-to-iso
`node
import { countryToAlpha2, countryToAlpha3 } from "country-to-iso";
// const { countryToAlpha2, countryToAlpha3 } = require("country-to-iso");
// countryToAlpha2
countryToAlpha2("US"); // returns "US"
countryToAlpha2("USA"); // returns "US"
countryToAlpha2("U S A"); // returns "US"
countryToAlpha2("U.S.A"); // returns "US"
countryToAlpha2("US of A"); // returns "US"
countryToAlpha2("US and A"); // returns "US"
countryToAlpha2("United States"); // returns "US"
countryToAlpha2("United States of America"); // returns "US"
countryToAlpha2("America"); // returns "US"
// countryToAlpha3
countryToAlpha3("US"); // returns "USA"
// etc...
`
| Script | Description |
| -----------------------|-------------|
| npm run build | Builds project to lib/. |npm run seed
| | Takes data from the libraries countryjs and country-list and updates data/iso-alpha-.json and data/country/.json files. |npm run generate
| | Takes seeded data, makes variants of names, checks for clashes (there's no mechanism to handle clashes as it's not come up) and dumps the data to data/names.json. |npm test
| | Runs tests. |
Always run the following. It'll update everything from countryjs and country-list packages. It might include what you're looking for.
`zsh`
npm update --save-dev countryjs country-list
npm run seed
npm run generate
npm test
#### Add a New Country
* Add the ISO 3166-1 alpha-2 code to data/iso-alpha-2.jsondata/iso-alpha-3.json
* Add the ISO 3166-1 alpha-3 code to data/country/
* Create a file for your new country following the format of the other countries.
* Add some tests
* Run the following:
`zsh`
npm run generate
npm run test
#### Add a New Variant
Manually it to the names array in the correct data/country/.json file
* Add some tests
* Run the following:
`zsh``
npm run generate
npm test