December 4, 2024   -   David Oyinbo

Country flags and currency package

Type-safe country and currency data with handy helpers for distances and lookups.

TypeScriptLibraryNPMGeographyCurrency

Overview

Provides countries, currencies, flags (unicode + SVG), capitals, dial codes, and simple geospatial utilities like distances and closest/farthest country queries. Zero dependencies and ships with TypeScript types.

Highlights

Data + Types

  • Strong TS types for Country, Currency, and Location
  • Country flags (unicode + SVG), capitals, dial codes
  • Handy methods: getCurrencies, getCountries, getCountriesBy, distanceBetweenLocations

Zero dependencies

  • Lightweight and tree-shakeable
  • Works via ESM import or CDN bundle
  • MIT-licensed

Minimal usage

import CountryAndCurrency from "@workmate/country-and-currency";

// Look up a currency by code
const mxn = CountryAndCurrency.getCurrencyBy("code", "MXN");
console.log(mxn?.symbol); // $

Other Projects

October 1, 2021

Payaza Web SDK

A JavaScript Web SDK that simplifies integrating Payaza checkout on web applications. Built as part of my role at Payaza Africa.

SDKJavaScriptPayments
June 1, 2022

iPay (Nuxt 3 Pet Project)

A simple Nuxt 3 site built to explore the Nuxt 3 ecosystem, routing, layouts, and component patterns.

Nuxt 3VuePet Project
May 10, 2024

Canvas Random Floating Circle

Pet project animating randomly floating circles on HTML Canvas with simple drift and easing.

JavaScriptHTML CanvasAnimation

Let's build something together

Available for senior engineering roles, consulting, and architecture reviews.

© 2025 David Oyinbo