ekhrystenko/country-tools

A simple Laravel package for working with country data (code, name, flag, phone code, currency) with caching support.

Installs: 0

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 1

Forks: 0

Open Issues: 0

pkg:composer/ekhrystenko/country-tools

v1.0.1 2025-11-12 10:38 UTC

This package is auto-updated.

Last update: 2025-12-12 11:31:39 UTC


README

The ekhrystenko/country-tools package provides services to retrieve country data, such as country code, name, flag, phone code, and currency. The package uses repositories to store and access country data and offers caching services to improve performance.

Supported versions:

Author:

Installation

  composer require ekhrystenko/country-tools

Generating the countries.json File

To generate the JSON file containing country data, use the GenerateCountryJson Artisan command. This command fetches country data from an API and generates the JSON file.

  php artisan country:generate-json

Using Environment Variable for File Path

You can configure the path to the countries.json file using the COUNTRY_JSON_PATH environment variable in your .env file. If COUNTRY_JSON_PATH is not set, the package will use the default internal file path.

COUNTRY_JSON_PATH=/path/to/project/storage/countries.json

Usage in Your Project

After installing the package, you can use the Country facade:

use Eugene\CountryTools\Facades\Country;

$codes = Country::getCountryCodes();
$country = Country::getCountry('US');
$name = Country::getName('US');
$flag = Country::getFlag('US');
$phoneCode = Country::getPhoneCode('US');
$currency = Country::getCurrency('US');

Available Methods

Country::getCountryCodes()	Returns all country codes
Country::getCountry($code)	Returns full country data for a specific code
Country::getName($code)	        Returns the country name
Country::getFlag($code) 	Returns the country flag emoji or image
Country::getPhoneCode($code)    Returns the phone code for the country
Country::getCurrency($code)	Returns the currency for the country