mv-architecture

Structure new SwiftUI projects with Model-View architecture and defined folder conventions.

Updated Mar 25, 2026
One-click install
npx skills add https://github.com/ajohnson388/Skills --skill mv-architecture
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: mv-architecture
Source: https://github.com/ajohnson388/Skills/tree/main/skills/mv-architecture
Command: npx skills add https://github.com/ajohnson388/Skills --skill mv-architecture

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Provides a clear MV architecture blueprint to structure iOS apps, separating concerns and avoiding ViewModels while centralizing business logic in Presentation objects.

Core Features & Use Cases

  • Explicit folders and roles: Models, Presentation, Services, UI, Resources, and Extensions provide a clean, scalable project layout.
  • Environment-driven UI: Components are injected into SwiftUI environment for modular, testable code.
  • Conventions & guidance: Naming and folder conventions guide project setup for new SwiftUI projects.
  • Use Case: Start a new iOS project with MV architecture to improve maintainability and testability.

Quick Start

Replace ProjectName with your actual app name and scaffold the project using the provided folder structure as a starting point.

Frequently Asked Questions about mv-architecture

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure an iOS app with MV architecture in SwiftUI?

To structure an iOS app with MV architecture, you organize files into explicit folders for Models, Presentation, Services, UI, Resources, and Extensions. This enforces separation of concerns and centralizes business logic in Presentation objects.

What is the difference between MV architecture and MVVM for SwiftUI apps?

MV architecture distinguishes itself from MVVM by avoiding ViewModels entirely. It instead centralizes business logic within Presentation objects to provide a clear separation of concerns and a maintainable app structure.

Can I use environment-driven dependencies in a SwiftUI MV architecture?

Yes, you can use environment-driven dependencies in SwiftUI MV architecture. Components are injected directly into the SwiftUI environment, which ensures your code remains modular and testable.

When should I use the Model-View architecture pattern for a new iOS project?

You should use the Model-View architecture pattern when starting a new SwiftUI project that needs clear separation of concerns, explicit folder conventions, and streamlined onboarding without the overhead of ViewModels.