mindrally/skills

c-sharp

Guidelines for C# development including Blazor, Unity game development, and .NET backend best practices

Hot #2604 First seen Jan 25, 2026

Installation

$ npx skills add mindrally/skills --skill c-sharp

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from mindrally/skills · top by installs.

npx skills add mindrally/skills

Browse all from mindrally/skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 258
Default branch main
Open issues 0
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 3,602 B
  • docs SUMMARY.md 3,557 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 699 installs

SKILL.md

C# Development Guidelines

You are an expert in C# development with deep knowledge of .NET, Blazor, Unity, and modern C# language features.

Code Style and Structure

  • Write concise, idiomatic C# code with accurate examples
  • Follow .NET and C# conventions and best practices
  • Use object-oriented and functional programming patterns as appropriate
  • Prefer LINQ and lambda expressions for collection operations
  • Use descriptive variable and method names (e.g., IsUserLoggedIn, GetUserById)
  • Structure files according to .NET conventions (Controllers, Models, Services, etc.)

Naming Conventions

  • Use PascalCase for class names, method names, and public properties
  • Use camelCase for local variables and private fields
  • Use SCREAMINGSNAKECASE for constants
  • Prefix interfaces with "I" (e.g., IUserService)
  • Prefix private fields with underscore (e.g., _userRepository)

C# Language Features

C# 10+ Features

  • Use file-scoped namespaces for cleaner code
  • Use global usings for common namespaces
  • Leverage records for immutable data types
  • Use pattern matching for type checking and deconstruction
  • Use nullable reference types with proper annotations

Modern Syntax

  • Use expression-bodied members for simple methods and properties
  • Use target-typed new expressions (new())
  • Use switch expressions for concise conditional logic
  • Use string interpolation over string concatenation

Error Handling

  • Use try-catch blocks for expected exceptions
  • Create custom exception classes for domain-specific errors
  • Use ArgumentNullException.ThrowIfNull() for parameter validation
  • Implement the Result pattern for operation outcomes when appropriate
  • Log exceptions with context information

API Design

  • Follow RESTful conventions for web APIs
  • Use DTOs for data transfer between layers
  • Implement proper HTTP status codes
  • Use action filters for cross-cutting concerns
  • Version APIs appropriately

Performance

  • Use async/await for I/O-bound operations
  • Implement caching where appropriate
  • Use StringBuilder for string concatenation in loops
  • Avoid boxing/unboxing with generics
  • Use Span<T> and Memory<T> for high-performance scenarios

Dependency Injection

  • Use constructor injection for dependencies
  • Register services with appropriate lifetimes (Scoped, Transient, Singleton)
  • Use interfaces for service abstractions
  • Configure DI in Program.cs or Startup.cs

Testing

  • Write unit tests using xUnit or NUnit
  • Use Moq or NSubstitute for mocking
  • Follow Arrange-Act-Assert pattern
  • Aim for high test coverage on business logic
  • Use FluentAssertions for readable assertions

Security

  • Validate all user inputs
  • Use parameterized queries or Entity Framework to prevent SQL injection
  • Implement proper authentication and authorization
  • Store secrets in configuration (User Secrets, Azure Key Vault)
  • Use HTTPS for all communications

Blazor-Specific Guidelines

  • Use component-based architecture
  • Implement proper state management
  • Use cascading parameters for shared state
  • Optimize rendering with @key and virtualization
  • Handle component lifecycle events appropriately

Unity-Specific Guidelines

  • Use MonoBehaviour for game object behaviors
  • Implement ScriptableObjects for data containers
  • Follow the Component pattern for modularity
  • Use coroutines for time-based operations
  • Implement object pooling for frequently instantiated objects