NumSpeaks 3.1.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package NumSpeaks --version 3.1.0
                    
NuGet\Install-Package NumSpeaks -Version 3.1.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="NumSpeaks" Version="3.1.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="NumSpeaks" Version="3.1.0" />
                    
Directory.Packages.props
<PackageReference Include="NumSpeaks" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add NumSpeaks --version 3.1.0
                    
#r "nuget: NumSpeaks, 3.1.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package NumSpeaks@3.1.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=NumSpeaks&version=3.1.0
                    
Install as a Cake Addin
#tool nuget:?package=NumSpeaks&version=3.1.0
                    
Install as a Cake Tool

NumSpeaks - Number to Words Converter

A .NET library to convert numbers into words in Kurdish, Arabic, and English with full currency support for 155+ world currencies.

Features

  • Convert numbers to words in Kurdish, Arabic, and English.
  • Supports decimal numbers (e.g., 123.33).
  • 155+ currencies with type-safe Currency enum — no string typos.
  • Each currency can be referenced by ISO code or descriptive name.
  • Standard financial format with currency name and sub-unit.
  • Full currency names in all 3 languages (e.g., "US dollar", "دۆلاری ئەمریکی", "دولار أمريكي").

Installation

dotnet add package NumSpeaks

Usage

Basic Number to Words

using NumSpeaks;

// English
var english = 123_456_789.ToEnglishWords();
// one hundred twenty-three million four hundred fifty-six thousand seven hundred eighty-nine

// Kurdish
var kurdish = 991_887_766_551.ToKurdishWords();
// نۆ سەد و نۆوەت و یەک ملیار و هەشت سەد و هەشتا و حەوت ملیۆن و حەوت سەد و شەست و شەش هەزار و پێنج سەد و پەنجا و یەک

// Arabic
var arabic = 123_456.ToArabicWords();
// مئة و ثلاثة و عشرون ألف و أربعة مائة و ستة و خمسون

Decimal Numbers

// English
var en = 123.33m.ToEnglishWords();
// one hundred twenty-three and thirty-three

// Kurdish
var ku = 123.33m.ToKurdishWords();
// سەد و بیست و سێ و پۆینت سی و سێ

// Arabic
var ar = 123.33m.ToArabicWords();
// مئة و ثلاثة و عشرون فاصل ثلاثة و ثلاثون

Currency Support (Type-Safe)

Use either the ISO code or the descriptive name — both are equivalent:

// By ISO code
var usd = 234.32m.ToEnglishWords(Currency.USD);
// two hundred thirty-four US dollar and thirty-two cents

// By descriptive name (same result)
var usd2 = 234.32m.ToEnglishWords(Currency.UnitedStatesDollar);
// two hundred thirty-four US dollar and thirty-two cents

Currency in All Languages

// English with Iraqi Dinar
var en = 1500.750m.ToEnglishWords(Currency.IQD);
// one thousand five hundred Iraqi dinar and seven hundred fifty fils

// Kurdish with Iraqi Dinar
var ku = 1500.750m.ToKurdishWords(Currency.IraqiDinar);
// هەزار و پێنج سەد دیناری عێراقی و حەوت سەد و پەنجا فلس

// Arabic with Saudi Riyal
var ar = 99.50m.ToArabicWords(Currency.SaudiRiyal);
// تسعة و تسعون ريال سعودي و خمسون هللة

// English with Turkish Lira
var tr = 250.99m.ToEnglishWords(Currency.TurkishLira);
// two hundred fifty Turkish lira and ninety-nine kurus

// Kurdish with Euro
var eu = 50.25m.ToKurdishWords(Currency.Euro);
// پەنجا یۆرۆ و بیست و پێنج سەنت

// Whole number with currency
var whole = 1000.ToEnglishWords(Currency.BritishPound);
// one thousand British pound

Supported Currencies

All 155 ISO 4217 currencies are supported. Each can be referenced by code or name:

ISO Code Descriptive Name English Kurdish Arabic
USD UnitedStatesDollar US dollar دۆلاری ئەمریکی دولار أمريكي
EUR Euro euro یۆرۆ يورو
GBP BritishPound British pound پاوەندی بەریتانی جنيه إسترليني
IQD IraqiDinar Iraqi dinar دیناری عێراقی دينار عراقي
TRY TurkishLira Turkish lira لیرەی تورکی ليرة تركية
SAR SaudiRiyal Saudi riyal ریاڵی سعوودی ريال سعودي
AED UnitedArabEmiratesDirham UAE dirham دیرهەمی ئیماراتی درهم إماراتي
KWD KuwaitiDinar Kuwaiti dinar دیناری کوەیتی دينار كويتي
JPY JapaneseYen Japanese yen یەنی ژاپۆنی ين ياباني
CNY ChineseYuan Chinese yuan یوانی چینی يوان صيني
... ... ... ... ...

And 145+ more currencies with full support.

API Reference

// Extension methods on any numeric type
public static string ToEnglishWords(this object val, Currency? currency = null);
public static string ToKurdishWords(this object val, Currency? currency = null);
public static string ToArabicWords(this object val, Currency? currency = null);

Feedback

If you encounter issues or have suggestions, please open an issue on our GitHub repository.

License

This project is licensed under the MIT License.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
3.3.0 99 6/1/2026
3.2.1 97 5/17/2026
3.2.0 78 5/17/2026
3.1.3 99 5/17/2026
3.1.2 92 5/17/2026
3.1.1 114 3/29/2026
3.1.0 111 3/18/2026
3.0.0 108 3/17/2026
2.1.2 280 2/14/2024
2.1.1 204 2/14/2024
2.1.0 211 2/11/2024
2.0.1 218 2/8/2024
2.0.0 185 2/8/2024
1.0.1 252 1/8/2024
1.0.0.1 209 1/8/2024
1.0.0 235 1/8/2024

Initial release of NumSpeaks.
Convert Kurdish, Arabic, and English numbers to words effortlessly.