1.0.0 • Published 6 months ago

@prazzol/currency-formatter v1.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
6 months ago

@prazzol/currency-formatter

A simple and powerful currency formatter for Nepali, International, and any locale-based formats. Useful for applications needing localized number formatting and currency symbols like रू, $, , etc.


✨ Features

  • 🇳🇵 Nepali number format (e.g., 12,34,567)
  • 🌐 International format (e.g., 1,234,567)
  • 🌍 Locale + currency code support (e.g., ₹12,34,567, $1,234,567)
  • 🔣 Optional or custom currency prefix (like रू, Rs, $, )
  • 🔒 Fully written in TypeScript

📦 Installation

npm install @prazzol/currency-formatter

📚 Usage

import { formatCurrency } from '@prazzol/currency-formatter';

formatCurrency(1234567);
// → रू 12,34,567

formatCurrency(1234567, { showPrefix: false });
// → 12,34,567

formatCurrency(1234567, { prefix: '$', format: 'international' });
// → $ 1,234,567

formatCurrency(1234567, {
  format: 'locale',
  locale: 'en-US',
  currency: 'USD'
});
// → $1,234,567

🧰 API

formatCurrency(amount: number, options?: CurrencyFormatOptions): string

PropertyTypeDefaultDescription
format'nepali' \| 'international' \| 'locale''nepali'Choose format style
prefixstring'रू'Custom prefix (e.g., '$', 'Rs', '€')
showPrefixbooleantrueWhether to show the prefix
localestring'en-US'Locale (only used if format is 'locale')
currencystring'NPR'Currency code (only used if format is 'locale')

🔄 Format Types

🏷 Nepali Format

formatCurrency(1234567);
// → रू 12,34,567

🗺 International Format

formatCurrency(1234567, {
  prefix: '$',
  format: 'international'
});
// → $ 1,234,567

🌍 Locale Format (Fully Automatic)

formatCurrency(1234567, {
  format: 'locale',
  locale: 'fr-FR',
  currency: 'EUR'
});
// → 1 234 567 €

formatCurrency(1234567, {
  format: 'locale',
  locale: 'hi-IN',
  currency: 'INR'
});
// → ₹12,34,567

🧪 Running Locally for Development

npm install
npm run test