Skip to content

sadiq81/MVVM-CS-demo

Repository files navigation

Template App

Full-stack MVVM-CS architecture showcase: Vapor 4 backend + 3 iOS apps (UIKit, Mixed, SwiftUI).


Project Essentials


Repository Structure

template-app/
├── template-app-backend/         # Vapor 4 Swift backend
│   └── Sources/App/
└── template-app-ios/             # 3 iOS apps
    ├── Config/                   # Shared xcconfig base files
    ├── Resources/                # Shared assets (Images, Fonts, Localization, Video, Colors)
    ├── customerapp-Shared/       # Shared code (models, services, networking, SwiftUI views)
    ├── customerapp-UIKit/        # App 1: Pure UIKit
    ├── customerapp-Mixed/        # App 2: UIKit + SwiftUI (symlinks to SwiftUI views)
    ├── customerapp-SwiftUI/      # App 3: Pure SwiftUI
    └── customerapp.xcodeproj     # Xcode project (6 targets)

Quick Start

# Backend
cd template-app-backend
swift build && swift run          # localhost:8080

# iOS (any of the 6 schemes)
cd template-app-ios
xcodebuild -project customerapp.xcodeproj -scheme UIKit-Development -destination 'generic/platform=iOS Simulator' build

Development schemes connect to localhost:8080. Start the backend first.


Agent Guides

Detailed instructions for specific tasks live in .claude/agents/ (symlinked to ~/.claude/agents/):

Agent File Use when...
Jira .claude/agents/jira.md Fetching tickets, extracting and validating acceptance criteria
Figma .claude/agents/figma.md Validating design against ACs, producing UI component breakdowns
Architecture .claude/agents/architecture.md Making architectural decisions, understanding patterns, reviewing design
New Feature .claude/agents/new-feature.md Implementing a new module or feature from scratch
Code Review .claude/agents/code-review.md Reviewing PRs, checking conventions, catching anti-patterns
Networking .claude/agents/networking.md Adding API endpoints, response models, network service methods
UI Components .claude/agents/ui-components.md Building views, cells, collection views, using the design system
Bugfix .claude/agents/bugfix.md Diagnosing issues, tracing data flow, fixing bugs
Linting .claude/agents/linting.md Code style, lint rules, formatting

About

Building Scalable iOS Apps: A Modern MVVM + Coordinator Architecture with Service Dependency Injection

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages