Architecture
A persistence foundation that knows its place.
Groundwork separates intent from physicalization, and refuses to leak provider concerns into the application core.
Architecture
Principles that shape every package.
Groundwork's value comes from what it refuses to do as much as what it offers.
P.01
Generic packages stay application-agnostic
Core Groundwork assemblies never know about your domain. They define the contract, not the content.
P.02
Provider-specific shape lives in providers
Application modules never reach for SQL or document syntax. Provider packages own physical translation.
P.03
Unindexed portable queries fail clearly
Surprises are worse than errors. Portable queries refuse to silently degrade.
P.04
Runtime hot paths stay benchmark-gated
Optimized physicalization is explicit, measured, and opt-in — never accidental.
P.05
Application integrations remain opt-in
Groundwork integrates where you choose it to. It does not colonize the rest of your stack.
Build persistence on declared intent.
Use Groundwork as an MIT-licensed foundation for provider-neutral persistence in .NET applications.