Claude-code-skills ln-722-backend-generator
Generates .NET Clean Architecture backend structure from entity definitions. Use when bootstrapping .NET backend projects.
install
source · Clone the upstream repo
git clone https://github.com/levnikolaevich/claude-code-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/levnikolaevich/claude-code-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills-catalog/ln-722-backend-generator" ~/.claude/skills/levnikolaevich-claude-code-skills-ln-722-backend-generator && rm -rf "$T"
manifest:
skills-catalog/ln-722-backend-generator/SKILL.mdsource content
Paths: File paths (
,shared/,references/) are relative to skills repo root. If not found at CWD, locate this SKILL.md directory and go up one level for repo root. If../ln-*is missing, fetch files via WebFetch fromshared/.https://raw.githubusercontent.com/levnikolaevich/claude-code-skills/master/skills/{path}
ln-722-backend-generator
Type: L3 Worker Category: 7XX Project Bootstrap
Generates complete .NET backend structure following Clean Architecture principles.
Purpose & Scope
| Aspect | Description |
|---|---|
| Input | Project name, entity list, configuration options |
| Output | Complete .NET solution with layered architecture |
| Target | .NET 10+, ASP.NET Core |
Scope boundaries:
- Generates project structure and boilerplate code
- Creates MockData for initial development
- Does not implement business logic or database connections
Workflow
| Phase | Name | Actions | Output |
|---|---|---|---|
| 1 | Receive Context | Get project name, entities, options from coordinator | Configuration |
| 2 | Create Solution | Create .sln and .csproj files | Empty solution structure |
| 3 | Generate Domain | Create entities, enums, base classes | Domain project files |
| 4 | Generate API | Create controllers, DTOs, middleware | API project files |
| 5 | Verify | Build solution, check references | Build success |
Phase 1: Receive Context
Accept delegation from ln-720-structure-migrator.
| Input | Type | Required | Description |
|---|---|---|---|
| string | Yes | Solution and project name prefix |
| string | Yes | Directory for generated solution |
| string | Yes | .NET version (e.g., net10.0) |
| list | Yes | Entity names to generate |
| list | Yes | Feature groupings for MockData |
Options:
| Option | Default | Effect |
|---|---|---|
| true | Add Swashbuckle for API docs |
| true | Add structured logging |
| true | Add health endpoints |
| true | Generate mock data classes |
Phase 2: Create Solution
Generate solution file and project structure.
| Step | Action | Reference |
|---|---|---|
| 2.1 | Create solution directory | — |
| 2.2 | Generate .sln file | — |
| 2.3 | Create project directories | |
| 2.4 | Generate .csproj files per layer | |
| 2.5 | Add project references | |
Generated projects:
| Project | Purpose |
|---|---|
| HTTP endpoints, middleware |
| Entities, enums |
| Business logic interfaces |
| Data access interfaces |
| Cross-cutting utilities |
Phase 3: Generate Domain
Create domain layer files.
| Step | Action | Reference |
|---|---|---|
| 3.1 | Create class | |
| 3.2 | Generate entity classes per input | |
| 3.3 | Generate status enums | |
| 3.4 | Create folder structure | |
Entity generation rules:
| Entity Property | Generated As |
|---|---|
| Primary key | |
| String field | |
| Status field | |
| Timestamps | , from BaseEntity |
Phase 4: Generate API
Create API layer files.
| Step | Action | Reference |
|---|---|---|
| 4.1 | Generate Program.cs | |
| 4.2 | Generate controllers per entity | |
| 4.3 | Generate DTOs per entity | |
| 4.4 | Generate middleware classes | |
| 4.5 | Generate extension methods | |
| 4.6 | Generate MockData classes (if enabled) | |
| 4.7 | Add NuGet packages | |
Controller endpoints per entity:
| Endpoint | Method | Route |
|---|---|---|
| GetAll | GET | |
| GetById | GET | |
| Create | POST | |
| Update | PUT | |
| Delete | DELETE | |
Phase 5: Verify
Validate generated solution.
| Check | Command | Expected |
|---|---|---|
| Solution builds | | Success, no errors |
| Project references | Check .csproj | All references valid |
| Files created | Directory listing | All expected files present |
Generated Structure Summary
| Layer | Folders | Files per Entity |
|---|---|---|
| Api | Controllers/, DTOs/, Middleware/, MockData/, Extensions/ | Controller, DTO |
| Domain | Entities/, Enums/, Common/ | Entity, Status enum |
| Services | Interfaces/ | Interface (stub) |
| Repositories | Interfaces/ | Interface (stub) |
| Shared | — | Utility classes |
Critical Rules
- Single Responsibility: Generate only backend structure, no frontend
- Idempotent: Can re-run to regenerate (will overwrite)
- Build Verification: Must verify
passesdotnet build - Clean Architecture: Respect layer dependencies (inner layers independent)
- No Business Logic: Generate structure only, not implementation
- MockData First: Enable immediate API testing without database
Definition of Done
- Solution file created with all projects
- All project references configured correctly
- Domain entities generated for all input entities
- Controllers generated with CRUD endpoints
- DTOs generated for request/response
- MockData classes generated (if enabled)
- Program.cs configured with all services
-
passes successfullydotnet build - Swagger UI accessible (if enabled)
Risk Mitigation
| Risk | Detection | Mitigation |
|---|---|---|
| Build failure | fails | Check .csproj references, verify SDK version |
| Missing references | CS0246 errors | Add missing project references |
| Invalid entity names | Build or runtime errors | Validate entity names before generation |
| Path conflicts | File exists errors | Check target path, prompt before overwrite |
| Package restore failure | NuGet errors | Verify network, check package names |
Reference Files
| File | Purpose |
|---|---|
| Project organization, folder structure, dependencies |
| Entity generation rules, property patterns |
| Controller and DTO generation rules |
| Program.cs structure and service registration |
| Required and optional NuGet packages |
Version: 2.0.0 Last Updated: 2026-01-10