country_meta 1.0.0 copy "country_meta: ^1.0.0" to clipboard
country_meta: ^1.0.0 copied to clipboard

A Dart-only package that provides structured metadata for all countries, including ISO codes, phone codes, currencies, localized names, and flag image URLs.

example/main.dart

import 'package:country_meta/country_meta.dart';

void main() {
  // ===== Country lookup example =====
  final us = CountryRepository.byAlpha2('US');

  if (us != null) {
    print('=== United States Example ===');
    print('ISO alpha-2: ${us.isoAlpha2}');
    print('ISO alpha-3: ${us.isoAlpha3}');
    print('ISO numeric: ${us.isoNumeric}');
    print('Phone code: +${us.phoneCode}');
    print('Currency: ${us.currency} (${us.currencySymbol})');

    // Localized names
    print('Name (en): ${us.localizedName('en')}');
    print('Name (ru): ${us.localizedName('ru')}');
    print('Name (ar): ${us.localizedName('ar')}');

    // Emoji flag (strict ISO)
    print('Emoji flag: ${us.flagEmoji()}');

    // Flag URLs
    print('Flag URL (SVG): ${us.flagUrl()}');
    print('Flag URL (WebP 40px): ${us.flagUrl(
      format: FlagImageFormat.webp,
      width: FlagWidth.w40,
    )}');
  }

  // ===== Another country example =====
  final jp = CountryRepository.byAlpha2('JP');
  if (jp != null) {
    print('\n=== Japan Example ===');
    print('Emoji flag: ${jp.flagEmoji()}');
    print('Flag URL (JPEG 80px height): ${jp.flagUrl(
      format: FlagImageFormat.jpeg,
      height: FlagHeight.h80,
    )}');
  }

  // ===== Direct flag access without CountryRepository =====
  print('\n=== Direct Flag Access ===');
  // Emoji flag directly from ISO code
  print('US emoji: ${FlagEmojiBuilder.build('US')}');
  print('DE emoji: ${FlagEmojiBuilder.build('DE')}');

  // Flag URLs directly from ISO code
  print('US SVG:  ${FlagUrlBuilder.svg('US')}');
  print(
      'US WebP (40px width): ${FlagUrlBuilder.webp('US', width: FlagWidth.w40)}');
  print(
      'JP JPEG (80px height): ${FlagUrlBuilder.jpeg('JP', height: FlagHeight.h80)}');
}
8
likes
160
points
12
downloads

Publisher

unverified uploader

Weekly Downloads

A Dart-only package that provides structured metadata for all countries, including ISO codes, phone codes, currencies, localized names, and flag image URLs.

Homepage
Repository (GitHub)
View/report issues

Topics

#iso-codes #localization #flags #country #phone-codes

Documentation

API reference

License

MIT (license)

More

Packages that depend on country_meta