tattn/ios-architectures
39.1
Weak · 21 September 2026
882
lines of production code
Swift
primary language
4
measurements over time
What this system is
This system is an iOS application designed to demonstrate and compare multiple architectural patterns, specifically MVC, MVP, MVVM, and VIPER. It provides a unified codebase where each pattern is implemented as a separate Xcode scheme for easy testing. The project standardizes UI updates to the main thread and manages dependencies like SWXMLHash and Kingfisher.
Behavioural changes
Shared Xcode schemes and Swift 4.0 migration
The project now includes shared Xcode build schemes for each architectural pattern (CleanArchitecture, MVC, MVP, MVVM, and VIPER), allowing developers to easily build and run each variant from the Xcode scheme menu. Additionally, the project has been updated to Swift 4.0, enabling the use of new language features and improved compiler warnings.
ios-architectures.xcodeproj · high confidence
Standardizes collection view layout and enforces main-thread UI updates
A new CatCollectionViewLayout class is introduced to replace inline UICollectionViewFlowLayout configuration across multiple architectural patterns (MVC, MVP, MVVM, VIPER, and Clean Architecture). This change also updates the UI update logic to explicitly dispatch to the main thread using DispatchQueue.main.async, and switches several optional chaining calls to force-unwraps for view models and presenters. Additionally, the app's network security configuration is updated to allow arbitrary loads, and the app icon set is expanded to include 20x20 and 83.5x83.5 sizes for iPad and marketing.
ios-architectures · high confidence
Updated project dependencies and documentation
The project's CocoaPods dependencies (SWXMLHash and Kingfisher) have been updated to versions 4.2.5 and 4.5.0 respectively, removing previous version constraints. The README has been updated to include a Swift 4.0 badge, a visual sample app screenshot, and a TODO list of future architecture implementations.
(repo-wide) · low confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 39 → 39 (+0.3)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 99 (-1.2)
- Architecture 69 → 69 (+0.0)
- Maturity 30 → 38 (+7.2)
- Readiness 15 → 15 (+0.0)
- Security 100 → 100 (+0.0)
Resolved (7)
- Dependency hygiene not measured — no supported dependency manifest was read
- No exposed public API
- The README lists architectures (MVC, MVP, MVVM, VIPER, Clean Architecture) and links them but never explains how they fit together or what the sample app demonstrates. (README.md)
- complexity unreadable for .swift — churn × complexity hotspots could not be measured
- early-stage repository — too little history to judge knowledge freshness
- git history depth insufficient
- single-maintainer — knowledge-concentration (bus factor) risk
New (10)
- Documentation: no installation or build instructions (README.md)
- Documentation: no project overview (README.md)
- Documentation: no usage examples (README.md)
- Duplicated block (12 lines × 4) (ios-architectures/CleanArchitecture/DataStore.swift)
- Duplicated block (13 lines × 2) (ios-architectures/MVP/Presenter.swift)
- Duplicated block (15 lines × 2) (ios-architectures/CleanArchitecture/DataStore.swift)
- Duplicated block (22 lines × 3) (ios-architectures/MVC/View.swift)
- Duplicated block (2–6 lines × 5) (ios-architectures/CleanArchitecture/DataStore.swift)
- Members sharing a duplicated core (5 members, 50+ identical tokens) (ios-architectures/CleanArchitecture/DataStore.swift)
- No ADRs found
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
tattn/ios-architectures was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 21 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 67e6607c5df818e0c5e325e8bbe11a5976a8a5ec — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-b84573e22831.