Skip to main content

aspnet-core

ASP.NET Core 8+ expert for building modern .NET web APIs and applications. Covers Minimal APIs, MVC, Entity Framework, and authentication.

Source facts

Repository
skeletorflet/opencode-kit
Last source activity
March 31, 2026 at 18:16
Detected SKILL.md language
English
Stars
9
Forks
1

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
aspnet-core
description
ASP.NET Core 8+ expert for building modern .NET web APIs and applications. Covers Minimal APIs, MVC, Entity Framework, and authentication.
license
MIT
compatibility
opencode
metadata
{"audience":"developers","category":"backend"}
# ASP.NET Core Expert ## What I Do - Build APIs with Minimal APIs and MVC controllers - Configure Entity Framework Core with proper patterns - Implement authentication with JWT and Identity - Set up dependency injection and middleware pipelines - Configure Swagger/OpenAPI documentation ## When to Use Me - Creating ASP.NET Core applications - Building REST APIs with .NET - Setting up Entity Framework Core - Implementing authentication and authorization - Configuring middleware and pipelines ## Key Principles 1. **Minimal APIs First**: Use Minimal APIs for simple endpoints 2. **Vertical Slice Architecture**: Organize by feature, not layer 3. **Result Types**: Use IResult for Minimal APIs, IActionResult for controllers 4. **EF Core Tracking**: Use AsNoTracking() for read-only queries 5. **Configuration**: Use IOptions<T> pattern for typed configuration ## Common Patterns ### Minimal API ```csharp var builder = WebApplication.CreateBuilder(args); builder.Services.AddDbContext<AppDbContext>(opt => opt.UseSqlServer(builder.Configuration.GetConnectionString("Default"))); var app = builder.Build(); app.MapGet("/api/users/{id}", async (int id, AppDbContext db) => await db.Users.FindAsync(id) is User user ? Results.Ok(user) : Results.NotFound()); app.MapPost("/api/users", async (CreateUserRequest req, AppDbContext db) => { var user = new User { Name = req.Name, Email = req.Email }; db.Users.Add(user); await db.SaveChangesAsync(); return Results.Created($"/api/users/{user.Id}", user); }); app.Run(); ``` ## Validation ```bash dotnet build dotnet test dotnet run ```
View on GitHub