# dotnet/ClangSharp

Clang bindings for .NET written in C#

Repository: https://github.com/dotnet/ClangSharp
Canonical: https://ross.abutalabs.com/products/clangsharp
Language: C#
License: MIT
License Family: permissive
Topics: hacktoberfest
Last push: 2026-09-02T13:18:06+00:00

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

## Adoption (not part of the score)
Stars 1248, forks 187 (observed 2026-09-03T02:15:11.345025+00:00)

## What it is
ClangSharp provides C# bindings for the Clang C/C++ compiler library, auto-generated from Clang's C headers using ClangSharpPInvokeGenerator. It exposes raw unsafe APIs plus safer type-safe abstractions, enabling .NET tooling built around C/C++ code parsing and analysis.

## Use cases
- parse C/C++ source code from .NET
- generate P/Invoke bindings for native C libraries
- build C/C++ code analysis tools in C#
- access libClang APIs from managed code
- create refactoring or linting tools for C/C++ in .NET

## When to choose
- you need to parse or analyze C/C++ code from a .NET application
- you want to auto-generate C# interop bindings from C headers
- you need type-safe wrappers around libClang

## When to avoid
- you need Clang bindings in a language other than C#/.NET
- you only need to compile C/C++ code rather than parse it
- you want a fully managed parser without native libClang dependencies

## Facets
- artifact type: library
- maturity: active
- function: parser, compiler, sdk, developer-tools
- domain: parsers, compilers, developer-tools, programming-languages
- platform: dotnet, cross-platform, windows
- tags: clang, bindings, pinvoke, c-cpp-interop, interop, native-bindings, code-generation, linux, macos

## Member repositories
- dotnet/ClangSharp (main) score 93

## Provenance
- Observed fields: from GitHub, fetched 2026-09-03T02:15:11.345025+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-30T05:08:19.042577+00:00, confidence not recorded.
  - readme: https://github.com/dotnet/ClangSharp (fetched 2026-09-03T02:15:11.345025+00:00, sha fae0150500cc)
- Data as of 2026-08-30T08:39:29.467469+00:00.
