249 countries. 5,000+ subdivisions. Postal codes, currencies, dial codes, geography, and EU/SEPA membership โ in one tree-shakeable package.
One package replaces half a dozen country data libraries.
Full ISO 3166-1 with alpha-2, alpha-3, and numeric codes.
ISO 3166-2 states, provinces, regions, and territories.
Validate ZIP codes, postcodes, PIN codes for 150+ countries.
EU, SEPA, EEA, Eurozone, and Schengen membership checks.
Import only what you need โ from 60KB down to 8KB.
Full type definitions. Zero runtime dependencies for core.
Install and start querying country data in seconds.
$ npm install @koshmoney/countriesimport { country } from '@koshmoney/countries';
const us = country.getCountry('US');
// { alpha2: 'US', alpha3: 'USA', numeric: '840',
// name: 'United States of America', ... }
const all = country.getAllCountries();
// 249 countriesSpecialized modules are separate subpath exports โ they never bloat your main bundle.
@koshmoney/countries/currencyimport { currency } from '@koshmoney/countries/currency';
currency.getCurrency('US');
// { code: 'USD', name: 'US Dollar', symbol: '$' }@koshmoney/countries/dialCodeimport { dialCode } from '@koshmoney/countries/dialCode';
dialCode.getDialCodes('US');
// ['+1']@koshmoney/countries/geographyimport { geography } from '@koshmoney/countries/geography';
geography.getContinent('JP');
// 'Asia'@koshmoney/countries/membershipimport { membership } from '@koshmoney/countries/membership';
membership.isEU('DE');
// trueReplace multiple packages with one unified API.
// 3 packages, different APIs
import * as iso3166_1 from 'iso-3166-1';
import * as iso3166_2 from 'iso-3166-2';
import currencies from 'currency-codes';
// No TypeScript, no validation
const c = iso3166_1.whereAlpha2('US');
const s = iso3166_2.subdivision('US-CA');// One package, unified API
import { country, subdivision }
from '@koshmoney/countries';
import { currency }
from '@koshmoney/countries/currency';
const c = country.getCountry('US');
const s = subdivision.get('US-CA');
const usd = currency.getCurrency('US');Feature comparison with popular alternatives.
| Feature | @koshmoney/countries | i18n-iso-countries | countries-list | country-state-city |
|---|---|---|---|---|
| Countries | 249 | 249 | 249 | 249 |
| Subdivisions | 5,000+ | โ | โ | 5,000+ |
| Postal Codes | 150+ | โ | โ | โ |
| Currencies | Partial | |||
| TypeScript | Built-in | @types | Built-in | Partial |
| Tree-Shaking | Per-country | |||
| Zero Deps | Core | |||
| Last Updated | March 2026 | 2023 | 2024 | 2024 |
From fintech compliance to SaaS country pickers.
Get ISO codes, subdivisions, currencies, and more โ in one package.
$ npm install @koshmoney/countries