From swiftui
Enforces Clean Architecture in SwiftUI/SwiftData apps: layers Presentation→Domain←Data, flags violations, guides DI and refactoring.
How this command is triggered — by the user, by Claude, or both
Slash command
/swiftui:clean-architectureswiftui-review/references/The summary Claude sees in its command listing — used to decide when to auto-load this command
# Clean Architecture Clean Architecture separates code into layers: Presentation → Domain ← Data. Dependencies point inward. ## Presentation Layer - ViewModels must use `@Observable` (not `ObservableObject`) and be marked `@MainActor`. - Views must be purely declarative – no business logic, no direct API calls, no database access. - ViewModels must call Use Cases from Domain, never directly access repositories or network clients. - Use `@State` for view-local UI state only (sheet presentation, focus), not domain data. - Inject dependencies through initializers, never use singletons like...
Clean Architecture separates code into layers: Presentation → Domain ← Data. Dependencies point inward.
@Observable (not ObservableObject) and be marked @MainActor.@State for view-local UI state only (sheet presentation, focus), not domain data.NetworkManager.shared.private(set) state – views read, ViewModels write.import SwiftUI, no import SwiftData).Sendable when passed across concurrency boundaries.Codable to domain entities – use separate DTOs in Data layer.GetProductsUseCase, AddToCartUseCase.@Model classes as Sendable – this causes runtime crashes.ModelContext operations must be on @MainActor.@MainActor.Flag these architectural violations:
@Model classes marked as Sendable.shared) used for testable dependenciesCodable conformance@main struct).@Environment to pass dependencies down view hierarchy.npx claudepluginhub fradser/dotclaude --plugin swiftui/create-viewGenerates a SwiftUI view file with MVVM architecture, property wrappers, layouts, navigation elements, states, accessibility, dark mode support, previews, and documentation.
/audit-dddAudits DDD architecture in PHP projects at <path>, analyzing layer separation, domain model richness, violations; provides pattern recommendations with generation skill links. Supports quick/standard/deep levels.