You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP

all-iso-language-codes

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

all-iso-language-codes

List of all iso 639-1, 639-2T, 639-2B, 639-3 codes with their translations in any language

1.0.20
latest
90

Supply Chain Security

100

Vulnerability

100

Quality

86

Maintenance

100

License

Version published
Weekly downloads
1.1K
-1.87%
Maintainers
1
Weekly downloads
 
Created

List of ISO 639-1, 639-2T, 639-2B and 639-3 codes with translations in all available languages

Sometimes you need to get a fresh list of 639-1, 639-2T, 639-2B or 639-3 language codes and their translations. Until now there was not an easy way to get them.

All data are available in json format in data/[language]/639-1.json. More formats might be available in the future.

Usage

JS functions

FunctionArgumentsReturn valueExample usage
getEnglishName(code: string)language codestring | nullgetEnglishName('cs') => Czech
getNativeName(code: string)language codestring | nullgetNativeName('cs') => čeština
getName(code: string, language = 'en')from language, to language?string | nullgetName('cs', 'en') => Czech
isValid(code: string, availableIsoTypes?: IsoType[], moreInfo = false)language code, IsoType (below table), moreInfoboolean | { iso: IsoType | null; found: boolean; }isValid('cs') => true, isValid('cs', ['639-1'], true) => { iso: '639-1'; found: true; },
getIsoCodesFromNativeName(nativeName: string, normalizeString = false)language name, should normalize string (lowercase and remove diacritics)IsoType[] | nullgetIsoCodesFromNativeName('ČeŠtInA', true) => ['639-3', '639-2B', '639-2T', '639-1']
getAll639_1()-string[] (639-1 array)getAll639_1() => ['aa', 'ab', 'af'...]
getAll639_2B()-string[] (639-2B array)getAll639_2B() => ['aar', 'abk', 'ace'...]
getAll639_2T()-string[] (639-2T array)getAll639_2T() => ['aar', 'abk', 'ace'...]
getAll639_3()-string[] (639-3 array)getAll639_3() => ['aaa', 'aab', 'aac'...]

type IsoType = '639-1' | '639-2B' | '639-2T' | '639-3'

File format

If you have some ideas (csv, another JSON format...) let me know or create PR.

Adding more languages

Language matrix is generated by Node.js Intl API (version 23.10.0). If you would like to edit something, Create PR in Node.js Intl API. Wait until release and run yarn generate.

Tests

There are jest tests which tests basic functionality. Feel free to extend them or convert to vitest.

More info

Getting the list of all available languages is from official list

More packages from me

  • all-iso-language-codes - List of ISO 639-1, 639-2T, 639-2B and 639-3 codes with translations in all available languages
  • expo-video-player - Customizable Video Player controls for Expo
  • free-email-domains-list - Fresh list of all free email domain providers. Can be used to check if an email address belongs to a company. Updated weekly

FAQs

Package last updated on 25 Mar 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts