Claude Code Plugins

Community-maintained marketplace

Feedback

app-architecture

@YosrBennagra/3SC
0
0

Define and maintain clean architecture for the .NET 8 WPF widget host app. Use when shaping solution structure, layer boundaries, dependency rules, DI wiring, and project layout to keep UI, application, domain, and infrastructure separated.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name app-architecture
description Define and maintain clean architecture for the .NET 8 WPF widget host app. Use when shaping solution structure, layer boundaries, dependency rules, DI wiring, and project layout to keep UI, application, domain, and infrastructure separated.

App Architecture

Overview

Keep a clean, scalable structure that supports a widget host with a single shell and optional secondary windows.

Constraints

  • .NET 8
  • WPF UI layer with MVVM
  • Clean architecture boundaries

Layering rules

  • Domain: entities, value objects, invariants, domain services.
  • Application: use cases, DTOs, interfaces, orchestration.
  • Infrastructure: persistence, external services, OS integration.
  • UI: WPF views, view models, shell, resources.

Dependency rules

  • Dependencies flow inward only.
  • Domain has no dependencies on UI or infrastructure.
  • Application depends on domain.
  • Infrastructure depends on application/domain.
  • UI depends on application/domain (and optionally infrastructure via DI).

Project layout (suggested)

  • 3SC.Domain
  • 3SC.Application
  • 3SC.Infrastructure
  • 3SC.UI

Workflow

  1. Identify the change scope (UI, application, domain, infrastructure).
  2. Create or move types into the correct layer.
  3. Define interfaces in Application/Domain, implement in Infrastructure.
  4. Wire DI at the composition root (UI startup).
  5. Validate boundaries before adding new references.

References

  • references/layering.md for boundary and dependency rules.
  • references/solution-structure.md for project layout guidance.
  • references/di-composition.md for DI setup and module wiring.