# angularsen/UnitsNet

Makes life working with units of measurement just a little bit better.

Repository: https://github.com/angularsen/UnitsNet
Canonical: https://ross.abutalabs.com/products/unitsnet
Homepage: https://www.nuget.org/packages/UnitsNet/
Language: C#
License: MIT-0
License Family: permissive
Topics: conversion, units-of-measure, units, powershell, csharp, quantities, unit-converter, abbreviations, parse, quantity, converter, unit, measure, measures, measurement, measurements
Last push: 2026-08-02T23:35:04+00:00

## Health v2 (maintenance only)
Score: 95/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 95, release rhythm 93, longevity 100
- inputs: {"age_days": 4793, "days_push": 31, "days_rel": 47, "gap_med": 11, "n_releases_24m": 18}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2969, forks 416 (observed 2026-08-28T04:07:32.689849+00:00)

## What it is
Units.NET is a .NET library providing strongly typed quantities and units of measurement with unit conversion, parsing, and localization support. It eliminates magic constants by letting code work with typed quantities like Length and Mass across hundreds of units.

## Use cases
- convert between units of measurement in C#
- parse unit strings like '5 m/s' into typed quantities
- avoid magic constants for units in .NET code
- build a unit converter app
- serialize quantities to JSON or XML
- localize unit abbreviations by culture

## When to choose
- you write .NET/C# code dealing with physical quantities or measurements
- you need strongly typed units with operator overloads and culture-aware parsing
- you want a mature, widely used MIT-licensed library on NuGet

## When to avoid
- your project is not on .NET (though sibling ports exist for other platforms)
- you only need one-off conversions a simple formula can handle
- you need a modular build with only a few units and can't use the experimental UnitsNet.Modular

## Facets
- artifact type: library
- maturity: stable
- function: serialization, parser, sdk
- domain: developer-tools, cross-platform
- platform: dotnet, cross-platform, windows
- tags: units-of-measure, unit-conversion, quantities, csharp, nuget, measurement, localization, algorithms, linux, macos

## Member repositories
- angularsen/UnitsNet (main) score 95

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:32.689849+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T07:31:45.001749+00:00, confidence not recorded.
  - readme: https://github.com/angularsen/UnitsNet (fetched 2026-08-28T04:07:32.689849+00:00, sha 0f77fa44c70a)
  - homepage: https://www.nuget.org/packages/UnitsNet/ (fetched 2026-08-29T09:47:03.011859+00:00, sha 402ac1d4d295)
  - site_page: https://www.nuget.org/policies/About (fetched 2026-08-29T09:47:03.022173+00:00, sha a113b8a074c9)
- Data as of 2026-08-30T08:39:29.467469+00:00.
