ANcpLua.NET.Sdk 1.0.0

There is a newer version of this package available.
See the version list below for details.
<Sdk Name="ANcpLua.NET.Sdk" Version="1.0.0" />
                    
For projects that support Sdk, copy this XML node into the project file to reference the package.
#:sdk ANcpLua.NET.Sdk@1.0.0
                    
#:sdk directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.

ANcpLua.NET.Sdk

MSBuild SDK with opinionated defaults for .NET projects.

Features

  • Code Quality: BannedApiAnalyzers with predefined rules (no DateTime.Now, no Monitor.*, etc.)
  • Test Support: xunit.v3 + Microsoft Testing Platform (MTP) auto-configuration
  • CI Detection: Auto-enables strict mode on CI (GitHub Actions, Azure DevOps, GitLab)
  • CLAUDE.md Generation: Auto-generates project documentation from MSBuild properties
  • Shared Throw Helpers: Injected guard clause methods

Usage

Replace your SDK reference:


<Project Sdk="Microsoft.NET.Sdk">


<Project Sdk="ANcpLua.NET.Sdk/1.0.0">

Or use alongside Microsoft.NET.Sdk:

<Project Sdk="Microsoft.NET.Sdk">
  <Sdk Name="ANcpLua.NET.Sdk" Version="1.0.0" />
</Project>

CLAUDE.md Generation

Add properties to your .csproj to auto-generate CLAUDE.md:

<PropertyGroup>
  <ClaudePurpose>Backend service: API endpoints and data processing</ClaudePurpose>
  <ClaudeLayer>backend</ClaudeLayer>
  <ClaudeWorkflow>explore-plan-code-commit</ClaudeWorkflow>
</PropertyGroup>

<ItemGroup>
  <ClaudeCriticalFile Include="Storage/Database.cs" Reason="Schema changes break data" />
  <ClaudeAntiPattern Include="DateTime.Now" UseInstead="TimeProvider" Severity="error" />
  <ClaudeRequiredPattern Include="Lock" Description=".NET 9+ Lock class" />
</ItemGroup>

Configuration

Property Default Description
InjectSharedThrow true Inject Throw.cs guard clauses
InjectClaudeBrain true Generate CLAUDE.md on build
EnableCodeCoverage true (CI only) Enable code coverage collection
EnableDefaultTestSettings true Auto-configure test runner

Banned APIs

The SDK enforces these rules via RS0030:

  • DateTime.Now/UtcNow/Today → Use TimeProvider
  • Monitor.Enter/Exit → Use Lock.EnterScope()
  • Task.Delay → Use TimeProvider.Delay()
  • Newtonsoft.Json → Use System.Text.Json
There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

  • .NETStandard 2.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.7.5 0 1/29/2026
1.7.4 0 1/29/2026
1.7.3 43 1/28/2026
1.7.2 80 1/28/2026
1.7.1 34 1/28/2026
1.7.0 36 1/28/2026
1.6.31 85 1/27/2026
1.6.30 61 1/27/2026
1.6.29 244 1/23/2026
1.6.28 82 1/23/2026
1.6.27 87 1/23/2026
1.6.26 137 1/22/2026
1.6.25 85 1/22/2026
1.6.23 88 1/21/2026
1.6.22 86 1/21/2026
1.6.21 257 1/21/2026
1.6.20 83 1/21/2026
1.6.19 115 1/21/2026
1.6.18 79 1/21/2026
1.6.17 86 1/21/2026
1.6.16 81 1/20/2026
1.6.15 232 1/20/2026
1.6.14 91 1/20/2026
1.6.13 94 1/18/2026
1.6.12 124 1/18/2026
1.6.11 98 1/17/2026
1.6.10 124 1/16/2026
1.6.9 118 1/15/2026
1.6.8 99 1/15/2026
1.6.7 115 1/15/2026
1.6.6 103 1/14/2026
1.6.5 98 1/14/2026
1.6.4 98 1/14/2026
1.6.3 175 1/13/2026
1.6.2 140 1/10/2026
1.6.1 98 1/10/2026
1.3.31 113 1/9/2026
1.3.30 95 1/9/2026
1.3.29 112 1/9/2026
1.3.28 244 1/9/2026
1.3.27 97 1/9/2026
1.3.26 101 1/9/2026
1.3.25 97 1/9/2026
1.3.24 98 1/9/2026
1.3.23 131 1/6/2026
1.3.22 119 1/6/2026
1.3.21 97 1/6/2026
1.3.20 106 1/2/2026
1.3.19 107 1/2/2026
1.3.18 140 1/1/2026
1.3.17 106 1/1/2026
1.3.16 113 12/31/2025
1.3.15 107 12/31/2025
1.3.14 104 12/31/2025
1.3.13 102 12/31/2025
1.3.12 108 12/31/2025
1.3.10 111 12/31/2025
1.3.9 105 12/31/2025
1.3.8 113 12/30/2025
1.3.7 174 12/30/2025
1.3.6 100 12/30/2025
1.3.5 111 12/30/2025
1.3.4 120 12/30/2025
1.3.3 107 12/30/2025
1.3.2 108 12/30/2025
1.3.1 106 12/30/2025
1.3.0 106 12/30/2025
1.2.4 119 12/29/2025
1.2.3 110 12/29/2025
1.2.2 110 12/29/2025
1.2.1 197 12/25/2025
1.2.0 219 12/24/2025
1.1.8 290 12/16/2025
1.1.7 268 12/16/2025
1.1.6 296 12/16/2025
1.1.5 257 12/16/2025
1.1.4 261 12/16/2025
1.1.3 264 12/16/2025
1.1.2 277 12/15/2025
1.1.1 241 12/15/2025
1.1.0 245 12/15/2025
1.0.0 186 12/14/2025

Initial release: BannedApiAnalyzers, conditional polyfills, xunit.v3 + MTP, CLAUDE.md generation