CI Status | Code Coverage | Quality Gate Status |
---|---|---|
CountryData.js is a comprehensive Node.js package designed to provide easy access to detailed country information. It supports both JavaScript and TypeScript, making it versatile for various project needs. Whether you're building a web application, API, or any other project that requires country data, this package offers a simple and efficient solution.
Make sure to compile TypeScript files to JavaScript before running the code.
- Comprehensive Country Data: Access detailed information including
country names
,short codes
,phone codes
,regions
, andflags
. - JavaScript and TypeScript Support: Use the package in both JavaScript and TypeScript projects.
- Easy Integration: Seamlessly integrate with any Node.js project using ES modules.
- Asynchronous Operations: All methods return promises for efficient data handling.
- Lightweight: Minimal dependencies to keep your project lean.
Install CountryData.js using npm:
npm install countrydata.js
import { CountryHelper } from "countrydata.js";
const countryHelper = new CountryHelper();
// Get all countries
(async () => {
const allCountries = await countryHelper.getCountries();
console.log(JSON.stringify(allCountries, null, 2));
})();
// Get country by short code
(async () => {
const country = await countryHelper.getCountryByShortCode('US');
console.log(country);
})();
import { CountryHelper } from 'countrydata.js';
(async () => {
const countryHelper = new CountryHelper();
const allCountries = await countryHelper.getCountries();
console.log(JSON.stringify(allCountries, null, 2));
})();
// Get country by short code
(async () => {
const countryHelper = new CountryHelper();
const countryData = await countryHelper.getCountryByShortCode('US');
console.log(countryData);
})();
You can check the sample code in the example folder. With this sample code, you can see how to use the package in your project both in JavaScript and TypeScript.
Make sure to check how the Sample has been implemented .
The main class that provides access to country data. It works the same way in both JavaScript and TypeScript.
Method | Description |
---|---|
getCountries(): Promise<Country[]> |
Fetches and returns a promise that resolves to an array of all countries. |
getCountryByShortCode(shortCode: string): Promise<Country |
null>` |
getRegionsByCountryShortCode(shortCode: string): Promise<Region[]> |
Fetches and returns a promise that resolves to an array of regions for the specified country short code (e.g., "US"). |
getCountryByPhoneCode(phoneCode: string): Promise<Country |
null> |
getCountryPhoneCodeByShortCode(shortCode: string): Promise<string |
null>` |
We welcome contributions to CountryData.js! Please read our contributing guidelines for details on how to submit pull requests, report issues, or request features.
This project is licensed under the MIT License - see the LICENSE file for details.
If you encounter any issues or have questions about using CountryData.js, please open an issue on our GitHub repository or contact us directly through our support channels.