# JuliaStrings/utf8proc

a clean C library for processing UTF-8 Unicode data

Repository: https://github.com/JuliaStrings/utf8proc
Canonical: https://ross.abutalabs.com/products/utf8proc
Homepage: http://juliastrings.github.io/utf8proc/
Language: C
License: NOASSERTION
License Family: other
Last push: 2026-07-22T13:50:48+00:00

## Health v2 (maintenance only)
Score: 80/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 93, release rhythm 51, longevity 100
- inputs: {"age_days": 4432, "days_push": 42, "days_rel": 246, "gap_med": 50.0, "n_releases_24m": 5}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1293, forks 174 (observed 2026-08-28T04:04:16.122489+00:00)

## What it is
utf8proc is a small, clean C library providing Unicode normalization, case-folding, grapheme segmentation, and other operations for UTF-8 encoded data, currently supporting Unicode 17.0. It is maintained by the Julia developers and serves as the Unicode foundation of the Julia language, with bindings available for Ruby, Rust, and Swift.

## Use cases
- normalize utf-8 strings to nfc or nfd in c
- case-fold unicode text for case-insensitive comparison
- split text into grapheme clusters
- validate and iterate over utf-8 encoded strings
- strip accents and diacritics from user input
- get unicode character properties like width and category

## When to choose
- you need lightweight, dependency-free Unicode support in a C or C++ project
- you are embedding Unicode handling in a language runtime or database engine
- you need up-to-date Unicode standard support with a permissive MIT license

## When to avoid
- you are working in a high-level language that already ships full Unicode support in its standard library
- you need locale-aware collation or complex text shaping rather than normalization and segmentation

## Facets
- artifact type: library
- maturity: stable
- function: nlp, internationalization, parser
- domain: developer-tools
- platform: windows, cross-platform, c
- tags: unicode, utf-8, normalization, case-folding, grapheme-clusters, text-processing, natural-language-processing, localization, linux, macos

## Member repositories
- JuliaStrings/utf8proc (main) score 80

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:16.122489+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-30T04:54:07.597727+00:00, confidence not recorded.
  - readme: https://github.com/JuliaStrings/utf8proc (fetched 2026-08-28T04:04:16.122489+00:00, sha 78904d98351f)
  - homepage: http://juliastrings.github.io/utf8proc/ (fetched 2026-08-29T12:10:54.642640+00:00, sha a8ab601fda24)
- Data as of 2026-08-30T08:39:29.467469+00:00.
