humanizr/humanizer

Humanizer meets all your .NET needs for manipulating and displaying strings, enums, dates, times, timespans, numbers and quantities

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 34 minutes ago
Added to GitGenius on September 6th, 2026
Created on May 3rd, 2012
Open Issues & Pull Requests: 13 (+0)
GitHub issues: Enabled
Number of forks: 1,067
Total Stargazers: 9,863 (+0)
Total Subscribers: 195 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 46.4 days
Mean response time: 511.4 days
90th percentile: 1967.6 days
Tracked items: 210

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Work labelled "bug" is answered fastest, typically in about 3 weeks, while "localisation" waits about 5 months. Only 3% of issues opened in the past year have been closed. Three people close 97% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 5
New in 7 days: 3
Closed in 7 days: 0
Avg open age: 10 days
Stale 30+ days: 1
Stale 90+ days: 0

Recent activity

Opened in 7 days: 3
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • no release notes (109)
  • enhancement (41)
  • bug (38)
  • localisation (22)
  • jump in (15)
  • documentation (5)
  • question (2)
  • external (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Humanizer is a .NET library for converting strings, enums, dates, times, durations, numbers, quantities, and collections into human-readable text.

The library solves the problem of formatting data in ways that feel natural to end users. Rather than displaying raw values, it transforms them into phrases appropriate for human consumption. For example, it handles pluralization and singularization of words according to culture-specific rules, converts time spans into readable duration phrases, and formats byte sizes using standard SI and IEC units. The approach relies on locale-aware rules, including support for CLDR cardinal categories, so that output respects the grammatical conventions of different languages and regions.

Developers should choose this tool when building applications that need to present data to users in multiple languages or when they want to avoid hand-coding common formatting tasks. It suits projects ranging from simple console applications to complex web services that serve international audiences. The library provides both legacy APIs for backward compatibility and newer opt-in APIs with stricter behavior—for instance, newer pluralization methods return false when a requested form is not available rather than falling back to English, giving applications explicit control over localization completeness.

The project maintains a structured codebase with the main library in a dedicated source directory and comprehensive xUnit test coverage. Documentation is versioned alongside releases and includes upgrade guides between versions, along with a migration analyzer to help developers adapt to API changes. The contribution process is formalized through a documented guide, and the project actively manages issues for bug reports, feature requests, and documentation improvements.