sharp-runtime Documentation

A C++23 static library reimplementing a practical subset of the .NET System.* namespace.

ℹ About this project
sharp-runtime is not a full .NET runtime or CLR implementation. It is a pragmatic C++23 library that provides System::* API compatibility so that ported C#/XNA game code compiles with minimal changes. It powers CNA (C++ port of XNA 4.0) and mobile-eggbert.

Quick Start

# Clone the repository (with submodules)
git clone --recurse-submodules https://github.com/openeggbert/sharp-runtime.git
cd sharp-runtime

# Build
cmake -S . -B build
cmake --build build --parallel 4

# Run all tests
./build/SharpRuntimeTests

Explore the Documentation

Status Summary

MetricValue
Tests passing3132 (across 471 test suites)
Header coverage~408 / 449 (~91%)
C++ standardC++23
Build outputlibSHARP_RUNTIME.a
Build systemCMake ≥ 3.20
Primary platformLinux / macOS
Additional platformsWindows (partial), Android (SDL3), Emscripten (partial)
LicenseMIT