165 published skills · page 2 of 2
- ▌ Dotnet Domain Modeling · wshaddixModeling business domains. Aggregates, value objects, domain events, rich models, repositories.
- ▌ Dotnet File Based Apps · wshaddixRunning C# without a project file (.NET 10 SDK). Directives, CLI commands, migration.
- ▌ Dotnet Github Releases · wshaddixCreating GitHub Releases for .NET. Release creation, assets, notes, pre-release management.
- ▌ Dotnet Multi Targeting · wshaddixTargeting multiple TFMs or using newer C# on older TFMs. Polyfill strategy, API compat.
- ▌ Dotnet Nuget Authoring · wshaddixCreating NuGet packages. SDK-style csproj, source generators, multi-TFM, symbols, signing.
- ▌ Dotnet Semantic Kernel · wshaddixBuilding AI/LLM features. Semantic Kernel setup, plugins, prompt templates, memory stores, agents.
- ▌ Dotnet Spectre Console · wshaddixBuilding rich console output. Spectre.Console: tables, trees, progress, prompts, live displays.
- ▌ Dotnet Tool Management · wshaddixInstalling or managing .NET tools. Global, local, manifests, restore, version pinning.
- ▌ Dotnet UI Testing Core · wshaddixTesting UI across frameworks. Page objects, test selectors, async waits, accessibility.
- ▌ Dotnet Version Upgrade · wshaddixUpgrading .NET to a newer TFM. LTS-to-LTS, staged through STS, preview, upgrade paths.
- ▌ Dotnet Winforms Basics · wshaddixBuilding WinForms on .NET 8+. High-DPI, dark mode (experimental), DI patterns, modernization tips.
- ▌ HTTP Client Resilience · wshaddixIHttpClientFactory patterns with Polly for retries, circuit breakers, timeouts, and resilient HTTP communication. Includes best practices for HTTP client configuration and error handling. Use when configuring resilient HTTP clients in ASP.NET Core, implementing retry policies with Polly, or setting up circuit breakers for external service calls.
- ▌ Verify Email Snapshots · wshaddixPatterns for verifying email snapshots in tests to ensure email content matches expected outputs. Use when testing email rendering in unit tests, verifying MJML template outputs, or ensuring email content consistency across code changes.
- ▌ Aspire Service Defaults · wshaddixCreate a shared ServiceDefaults project for Aspire applications. Centralizes OpenTelemetry, health checks, resilience, and service discovery configuration across all services. Use when building Aspire-based distributed applications, needing consistent observability across services, or configuring HttpClient resilience and service discovery.
- ▌ Modern Csharp Coding Standards · wshaddix bundleWrite modern, high-performance C# code using records, pattern matching, value objects, async/await, Span<T>/Memory<T>, and best-practice API design patterns. Emphasizes functional-style programming with C# 12+ features. Use when writing new C# code or refactoring existing code, designing public APIs for libraries or services, optimizing performance-critical code paths, or building async/await-heavy applications.
- ▌ Dotnet Aot Architecture · wshaddixDesigning AOT-first apps. Source gen over reflection, AOT-safe DI, serialization, factories.
- ▌ Dotnet Artifacts Output · wshaddixUsing artifacts output layout. UseArtifactsOutput, ArtifactsPath, impact on CI and Docker.
- ▌ Dotnet CLI Architecture · wshaddixStructuring CLI app layers. Command/handler/service separation, clig.dev principles, exit codes.
- ▌ Dotnet CLI Distribution · wshaddixChoosing CLI output format. AOT vs framework-dependent, RID matrix, single-file, dotnet tool.
- ▌ Dotnet Input Validation · wshaddixValidating HTTP request inputs. .NET 10 AddValidation, FluentValidation, ProblemDetails.
- ▌ Dotnet Maui Development · wshaddixBuilding .NET MAUI apps. Project structure, XAML/MVVM, platform services, current caveats.
- ▌ Dotnet Mermaid Diagrams · wshaddixCreating Mermaid diagrams for .NET. Architecture, sequence, class, deployment, ER, flowcharts.
- ▌ Dotnet Project Analysis · wshaddixNavigating .NET solution structure or build configuration. Analyzes .sln, .csproj, CPM.
- ▌ Dotnet Roslyn Analyzers · wshaddix bundleAuthoring Roslyn analyzers. DiagnosticAnalyzer, CodeFixProvider, CodeRefactoring, multi-version.
- ▌ Dotnet Scaffold Project · wshaddixCreating a new .NET project. Generates solution with CPM, analyzers, editorconfig, SourceLink.
- ▌ Dotnet Solid Principles · wshaddixDesigning classes or refactoring. SOLID, DRY, SRP with C# anti-patterns, fixes, compliance.
- ▌ Dotnet Testing Strategy · wshaddixDeciding how to test .NET code. Unit vs integration vs E2E decision tree, test doubles.
- ▌ Dotnet Blazor Components · wshaddixBuilding Blazor components. Lifecycle, state management, JS interop, EditForm validation, QuickGrid.
- ▌ Dotnet Linq Optimization · wshaddixOptimizing LINQ queries. IQueryable vs IEnumerable, compiled queries, deferred exec, allocations.
- ▌ Dotnet Msbuild Authoring · wshaddixAuthoring MSBuild targets, props, or conditions. Custom targets, incrementality, Build patterns.
- ▌ Dotnet Version Detection · wshaddixProject has .csproj, global.json, or Directory.Build.props. Detects TFMs and SDK versions.
- ▌ Dotnet Build Optimization · wshaddixDiagnosing slow builds or incremental failures. Binary logs, parallel builds, restore.
- ▌ Dotnet Csharp Code Smells · wshaddix bundleReviewing C# for logic issues. Anti-patterns, common pitfalls, async misuse, DI mistakes.
- ▌ Dotnet Library API Compat · wshaddixMaintaining library compatibility. Binary/source compat rules, type forwarders, SemVer impact.
- ▌ Dotnet Messaging Patterns · wshaddixBuilding event-driven systems. Pub/sub, competing consumers, DLQ, sagas, delivery guarantees.
- ▌ Dotnet Release Management · wshaddixManaging .NET release lifecycle. NBGV versioning, SemVer, changelogs, pre-release, branching.
- ▌ Dotnet Secrets Management · wshaddixHandling secrets or sensitive configuration. User secrets, environment variables, rotation.
- ▌ Dotnet Structured Logging · wshaddixDesigning log pipelines. Aggregation, structured queries, sampling, PII scrubbing, correlation.
- ▌ Dotnet System Commandline · wshaddixUsing System.CommandLine 2.0. Commands, options, SetAction, custom parsing, middleware, testing.
- ▌ Aspire Integration Testing · wshaddix bundleWrite integration tests using .NET Aspire's testing facilities with xUnit. Covers test fixtures, distributed application setup, endpoint discovery, and patterns for testing ASP.NET Core apps with real dependencies. Use when writing integration tests for .NET Aspire applications, testing ASP.NET Core apps with real database connections, or verifying service-to-service communication in distributed applications.
- ▌ Mailpit Integration · wshaddixTest email sending locally using Mailpit with .NET Aspire. Captures all outgoing emails without sending them. View rendered HTML, inspect headers, and verify delivery in integration tests. Use when testing email delivery locally without sending real emails, setting up email infrastructure in .NET Aspire, or writing integration tests that verify emails are sent.
- ▌ Dotnet Efcore Architecture · wshaddixDesigning data layer architecture. Read/write split, aggregate boundaries, N+1 governance.
- ▌ Dotnet Integration Testing · wshaddixTesting with real infrastructure. WebApplicationFactory, Testcontainers, Aspire, fixtures.
- ▌ Dotnet Solution Navigation · wshaddixOrienting in a .NET solution. Entry points, .sln/.slnx files, dependency graphs, config.
- ▌ Localization Globalization · wshaddixMulti-language support, resource files, culture formatting, and globalization patterns for ASP.NET Core Razor Pages applications. Use when implementing multi-language support in ASP.NET Core applications, managing resource files for translations, or formatting dates, numbers, and currencies for different cultures.
- ▌ Csharp Concurrency Patterns · wshaddixChoosing the right concurrency abstraction in .NET - from async/await for I/O to Channels for producer/consumer to Akka.NET for stateful entity management. Covers both high-level abstractions and low-level synchronization primitives. Use when deciding how to handle concurrent operations in .NET, evaluating whether to use async/await, Channels, or Akka.NET, or managing state across multiple concurrent entities.
- ▌ Dotnet CLI Release Pipeline · wshaddixReleasing CLI tools. GitHub Actions build matrix, artifact staging, Releases, checksums.
- ▌ Dotnet Container Deployment · wshaddixDeploying .NET containers. Kubernetes probes, Docker Compose for local dev, CI/CD integration.
- ▌ Dotnet Csharp Configuration · wshaddixUsing Options pattern, user secrets, or feature flags. IOptions<T> and FeatureManagement.
- ▌ Dotnet Data Access Strategy · wshaddixChoosing a data access approach. EF Core vs Dapper vs ADO.NET decision matrix, performance tradeoffs.
- ▌ Dotnet Performance Patterns · wshaddixOptimizing .NET allocations/throughput. Span, ArrayPool, ref struct, sealed, stackalloc.
- ▌ Dotnet Architecture Patterns · wshaddixOrganizing APIs at scale. Vertical slices, request pipelines, caching, error handling, idempotency.
- ▌ Dotnet Csharp Async Patterns · wshaddixWriting async/await code. Task patterns, ConfigureAwait, cancellation, and common agent pitfalls.
- ▌ Dotnet Service Communication · wshaddixChoosing inter-service protocols. REST vs gRPC vs SignalR vs SSE decision matrix, tradeoffs.
- ▌ Dotnet API Surface Validation · wshaddixDetecting API changes in CI. PublicApiAnalyzers, Verify snapshots, breaking change enforcement.
- ▌ Dotnet Csharp Modern Patterns · wshaddixUsing records, pattern matching, primary constructors, collection expressions. C# 12-15 by TFM.
- ▌ Dotnet Documentation Strategy · wshaddixChoosing documentation tooling. Starlight, Docusaurus, DocFX decision tree, migration paths.
- ▌ Dotnet Realtime Communication · wshaddixBuilding real-time features. SignalR hubs, SSE (.NET 10), JSON-RPC 2.0, gRPC streaming, scaling.
- ▌ Asp Net Core Identity Patterns · wshaddixProduction-grade patterns for ASP.NET Core Identity in Razor Pages and web apps. Covers setup, customization, security hardening, auth flows, roles/claims, external providers, and integration best practices for .NET 8+ / .NET 9+. Use when implementing authentication and authorization in ASP.NET Core applications, configuring ASP.NET Core Identity, setting up external login providers, or managing roles and claims.
- ▌ Type Design Performance · wshaddixDesign .NET types for performance. Covers struct vs class decision matrix, sealed by default, readonly structs, ref struct and Span/Memory selection, FrozenDictionary, ValueTask, and collection return types. Use when designing new types and APIs, reviewing code for performance issues, choosing between class, struct, and record, or working with collections and enumerables.
- ▌ Dotnet Csharp Source Generators · wshaddixCreating source generators. IIncrementalGenerator, GeneratedRegex, LoggerMessage, STJ source-gen.
- ▌ Dotnet Csharp Dependency Injection · wshaddixRegistering or resolving services with MS DI. Keyed services, scopes, decoration, hosted services.
- ▌ Microsoft Extensions Configuration · wshaddixConfiguration patterns using Microsoft.Extensions.Configuration. Covers configuration providers, binding, validation, and best practices for .NET applications. Use when setting up configuration in .NET applications, implementing configuration validation with IValidateOptions, or managing settings across different environments.
- ▌ Dotnet Csharp Nullable Reference Types · wshaddixEnabling nullable reference types. Annotation strategies, attributes, common agent mistakes.
- ▌ Microsoft Extensions Dependency Injection · wshaddixDependency injection patterns and best practices using Microsoft.Extensions.DependencyInjection for .NET applications. Use when configuring DI containers in .NET, choosing between service lifetimes (Singleton, Scoped, Transient), or implementing decorator patterns and service interception.