user@runtime:~/blog$ grep -l "native-aot" posts/*.md

native-aot

5 posts tagged with native-aot.

2026-04-29 9m

Node.js Native Addons in C#: Replacing C++ and node-gyp with .NET Native AOT

The C# Dev Kit team replaced their C++ Node.js addon with C# compiled via .NET Native AOT, eliminating Python and node-gyp from their build chain. Here's how N-API, UnmanagedCallersOnly, and LibraryImport make it work.

2026-04-26 10m

UnsafeAccessorAttribute: Zero-Overhead Private Member Access Without Reflection

UnsafeAccessorAttribute lets you access private fields, methods, and constructors at the same speed as direct calls — no reflection, no Reflection.Emit, and full Native AOT compatibility. Here's how to use it, when it makes sense, and where developers trip up.

2026-04-25 10m

.NET 10 on Ubuntu 26.04: One apt install Away from a Clean Linux Setup

Ubuntu 26.04 LTS ships .NET 10 in the default package archive, ending years of package conflicts and multi-feed confusion. Here is what changed, how to set up your environment, and what the new container images and Native AOT tooling look like.

2026-04-23 9m

Writing Node.js Native Addons in C# with .NET Native AOT

Microsoft's C# Dev Kit team replaced their C++ Node.js addons with C# and Native AOT, eliminating Python dependencies and simplifying their build pipeline. Here is how N-API, UnmanagedCallersOnly, and a custom DLL import resolver make it work.

2026-04-11 11m

TUnit: The Source-Generated Testing Framework That Skips Reflection Entirely

TUnit replaces runtime reflection with compile-time source generation for test discovery, delivering faster execution, Native AOT support, and compile-time safety that xUnit, NUnit, and MSTest cannot match.