Pengdows LLC

Hey Product Hunt — I built the .NET data layer I wish had existed 20 years ago.

by

pengdows.crud 2.0

I've been writing production .NET since beta 2 -- that is November 2001 for those that don't remember. I've used everything. I've been burned by everything.

EF Core hides what it's doing until it doesn't — and then you're reading query plans at 2am wondering why a simple update is taking 400ms. Dapper is honest, but it's also essentially abandoned infrastructure at this point — zero database-free test coverage until a PR I submitted last month raised it from 0.61% to 86%.

So I built the thing I actually wanted. pengdows.crud started internally in 2006, ran in production for a decade, and got a full .NET Core 8 rewrite as v1.0. 2.0 just dropped.

What makes it different:

SQL-first. You write SQL. The library handles quoting, parameterization, dialect differences, and result mapping across 14 databases — without touching your SQL. No expression trees. No LINQ. No hidden unit of work.

Map results to any shape — not just table-mapped entities. DTOs, view models, aggregates, arbitrary join projections. Columns match properties, it works. They don't, it fails explicitly.

The fake ADO.NET provider impersonates any of the 14 supported databases. Your gateway tests run without a database. That's what makes TDD actually viable at this layer.

Pool governance is built in — not bolted on.

Genuinely curious: Do you reach for Dapper because EF is too much magic, then end up writing your own plumbing around it? That's exactly the gap this fills.

2 views

Add a comment

Replies

Be the first to comment