π Explore the full documentation on GitHub Pages: https://nuetzliches.github.io/xtraq/
Xtraq turns SQL Server stored procedures into strongly typed, production-ready C# libraries. The CLI targets .NET 10.0 by default while staying multi-targeted for .NET 8.0 clients that need the current LTS.
- Generates C# access layers from stored procedures, including inputs, result models, context helpers, and execution pipelines.
- Captures database intent by snapshotting procedure signatures, nullability, and types into a repeatable cache.
- Reflects JSON procedures by translating JSON outputs into strongly typed records that respect nested payloads and options.
- Packages reusable artefacts you can ship as shared libraries, NuGet packages, or internal SDKs.
- Decouples schema delivery by generating versioned client SDKs that ship independently from the database deployment cadence.
- Stay aligned with the database β every regeneration reflects the exact SQL contract, preventing drift and runtime surprises.
- Slash boilerplate β no manual ADO.NET plumbing, magic strings, or copy-paste DTOs.
- Build confidence in CI/CD β deterministic outputs make diff reviews meaningful and keep client libraries in sync with migrations.
- Empower mixed teams β DBAs define the contract; application developers consume typed APIs with nullable annotations and async helpers.
- Publish a ready-to-use access layer in minutes without maintaining custom client libraries.
- Share consistent naming, nullability, and metadata with every consuming application.
- Catch signature drift early thanks to snapshot diffs before changes reach production.
- Work with strongly typed, nullable-aware models that mirror the database exactly.
- Call async helpers that enforce parameter completeness, ordering, and defaults automatically.
- Regenerate clients in CI so every service stays aligned with the latest schema.
- Install β
dotnet tool install --global xtraq - Configure β
xtraq initwrites non-secret defaults to.xtraqconfig(required). Secrets can live in a project-scoped.env, but.envis optional for offline/DB-less work. - Snapshot β
xtraq snapshotpulls stored procedure metadata and result shapes into the local cache. - Generate β
xtraq buildemits strongly typed C# artefacts ready to commit, package, or publish.
- Set
XTRAQ_PROJECT_PATHto pin the CLI to a specific project root when running commands from outside the repository.
-
.NET 10 SDK β primary target framework for new generators and samples.
-
.NET 8 SDK β optional when you must build against the current LTS.
-
Generated artefacts are read-only β rerun
xtraqrather than editing*/Xtraq/folders.
This project is under Free Use, No Warranty license.