Skip to content

Blog

Thoughts on .NET, open source, and building software.

Rag.NET: A RAG Pipeline That Isn't Tied to One Vendor

A modular retrieval-augmented generation library for .NET built on Microsoft.Extensions.AI — parsers, chunking, vector stores, reranking, and evaluation as swappable stages.

.NETAIRAGopen source

BlazorNative: Blazor Without the WebView

Rendering Blazor components as real native iOS and Android widgets through NativeAOT — no WebView, no JavaScript bridge, Yoga for layout.

.NETBlazorMobileNative AOTopen source

Unearth: Data Recovery in Rust, Drivable by an Agent

A read-only recovery and disk-forensics toolkit — filesystem-aware undelete, signature carving of 150+ formats, lost-partition recovery, and an MCP interface.

RustForensicsCLIMCPopen source

AI.Sentinel: Security Middleware for Your LLM Calls

Drop-in monitoring for any IChatClient — detectors for prompt injection, PII leakage and hallucination signals, with an intervention engine and audit forwarding.

.NETAI SecurityOWASPopen source

Giving AI Agents a Memory That Never Leaves Your Machine

LongtermMemory-MCP is a fully local MCP server for persistent semantic memory — SQLite, a local transformer for embeddings, and no API keys anywhere.

AIMCPSQLiteTypeScriptopen source

Catching the OWASP Top 10 at Compile Time

Owasp.Analyzers is a set of Roslyn analyzers covering the OWASP Top 10 2025 for C#, turning security review into a build step instead of a scanning pass.

.NETRoslynSecurityOWASPopen source

AdoNet.Async: Bringing `await foreach` to ADO.NET

AdoNet.Async adds async-first interfaces and base classes to System.Data — IAsyncEnumerable rows, ValueTask operations, and a drop-in .AsAsync() adapter.

.NETADO.NETAsyncNuGetopen source

Lucent Code: AI That Reads Your Code Like Your IDE Does

Lucent Code is a VS Code AI assistant that uses your language server for code intelligence — not file search. Any model, any provider.

VS CodeAILSPDeveloper Toolsopen source

Building Zero-Allocation .NET with Source Generators

The ZeroAlloc suite wires mediator dispatch, DI registration, validation, and more at compile time — no reflection, no boxing, no dictionaries at runtime.

.NETSource GeneratorsPerformanceRoslynopen source

MailPeek: Stop Sending Test Emails to Real People

MailPeek is an in-memory fake SMTP server with a real-time web dashboard for ASP.NET Core. Capture every email your app sends during development.

.NETASP.NET CoreTestingDeveloper Toolsopen source

MemoryLens MCP: Letting AI Read a Memory Profile

An MCP server that wraps JetBrains dotMemory and turns snapshots into concrete, AI-actionable code fixes instead of a wall of retention graphs.

.NETMCPPerformanceAIopen source

Giving AI Agents Eyes Into Your .NET Codebase

Roslyn CodeLens MCP gives AI coding assistants semantic .NET code understanding — type hierarchies, call graphs, DI registrations — without grep.

.NETRoslynMCPAIopen source

Hello World — Why I Started This Blog

A first post about why I'm writing, what excites me about programming in 2026, and how AI is changing the way I build software.

meta.NETAIopen source