v2.0.2 minimized-Allocation Culture-Aware

HumanNumbers Showcase

Exhaustive technical demonstration of the high-performance, culture-aware .NET number formatting ecosystem

.NET Standard 2.0+
Compatible
Full I18N
Cultures Supported

Quick Start Reference

Basics
1234567m.ToHuman(); // "1.23M"
Currency
val.ToHumanCurrency("USD"); // "$1.23M"
Fluent API
HumanNumber.Format(val).Strict().ToHuman();

Interactive Labs

Explore the full capabilities of HumanNumbers through hands-on demonstrations

#

Roman Numeral Lab

Convert integers to Roman numerals (1-3999)

💾

Byte Size Formatter

Defaulting to IEC (Binary) prefixes for precise developer presentation

Robust Parsing Lab

Demonstrating HumanNumber.Parse with round-trip support for formatted strings

🌍 Global Scaling & I18N

HumanNumbers is built on the native .NET CultureInfo system, automatically respecting native numbering rules, separators, and currency symbols.

Live Sync
Culture Scaled (ToHuman) Currency Format Native Grouping Rules
Syncing global cultures...

Interactive Policy Lab

Experiment with cross-culture numbering systems and custom policies

Control Panel

Live Output

Human-Readable Representation
...
string result =
Real-time Reactive Context Aware

Technical Policy Context

Start Scaling at
1,000
Precision
2
Magnitude Suffix Map

Financial Engineering Labs

Specialized formatting for trading desks, treasury markets, and accounting systems

%

Basis Points (bps)

...
val.ToHumanBps()
½

Treasury Fractions

...
val.ToHumanFraction(32)
✍️

Check Writing

...
val.ToHumanWords("Dollars")

ASP.NET Core TagHelpers

Embed human-readable numbers directly in your Razor views

<hn-check value="1250.50" major-currency="Dollars" />
Live Razor Output

Financial Systems Playground

Advanced financial formatting with basis points, fractional prices, and check-writing

Live JSON Submission

ASP.NET Serialization Roundtrip

Idle
// Hit Run to map via ASP.NET...

Performance & Benchmarks

HumanNumbers is optimized for zero-allocation hot paths using Span<char>

Method Scenario / Input Mean Allocated Engineering Context
StandardScaled Naive (999,499) 78.33 ns 80 B Naive ToString + Concat approach.
ToHuman() Governed (999,499) 172.79 ns 56 B 30% less memory than naive.
ToHuman() (Span) Governed (999,499) 152.09 ns 24 B Optimized high-throughput path.
TryParse() $1.50M 50.86 ns 0 B Zero-Alloc parsing verified.
ToHumanBytes() 1024 Bytes 56.62 ns 40 B SI/IEC compliant scaling.
ToRoman() 2024 31.79 ns 40 B Optimized recursive buffer path.

Built for Modern .NET Performance

Join a growing ecosystem of high-performance services leveraging HumanNumbers for governed, allocation-aware numeric presentation.

.NET CLI
dotnet add package HumanNumbers
dotnet add package HumanNumbers.AspNetCore
Package Manager
Install-Package HumanNumbers
Install-Package HumanNumbers.AspNetCore