devxoul/Then
51.9
Weak · 30 September 2026
279
lines of production code
Swift
primary language
2
measurements over time
What this system is
This system is a Swift utility library named 'Then' that provides extensions for object configuration and execution. It supports multiple platforms including iOS, macOS, tvOS, and watchOS, and offers installation via Swift Package Manager and CocoaPods. The library includes comprehensive test coverage for its core functionality and has recently adopted Tuist for project generation to improve build consistency.
Architecture
Migration to Tuist for project generation
The project has switched from traditional Xcode project files to Tuist, a tool that generates Xcode projects from code. This change introduces new configuration files (Project.swift, Tuist.swift) and updates the .gitignore to exclude generated artifacts like .xcodeproj files and DerivedData. For users, this means the project structure is now defined programmatically, potentially simplifying maintenance and ensuring consistency across different environments, while the core library functionality remains unchanged.
(repo-wide) · high confidence
Behavioural changes
Then library adds throwable closures and platform-specific geometry support
The Then library now allows its configuration closures to throw errors, enabling callers to handle failures during property setup or execution. It also extends support to iOS and tvOS by integrating with UIKit.UIGeometry for layout-related types, while adding conformance for JSONDecoder, JSONEncoder, and Set to the Then protocol.
Sources · high confidence
Test coverage
Added unit tests for Then, With, and Do extensions
Added a new test suite (ThenTests.swift) that verifies the behavior of the Then, With, and Do extension methods across various types including NSObject, arrays, dictionaries, sets, and UserDefaults, including error handling for the Do extension.
Tests · high confidence
Dependencies
Add Swift Package Manager and CocoaPods support for Then 3.0.0
The library now supports installation via Swift Package Manager and CocoaPods. The new Package.swift defines the 'Then' library with support for macOS 10.10, iOS 9, tvOS 9, and watchOS 2, while the Then.podspec configures CocoaPods for version 3.0.0, targeting iOS 9, macOS 10.9, tvOS 9, and watchOS 2, and requires Swift 5.0.
(dependencies) · high 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 51 → 52 (+0.8)
- Rubric changed (rubric-2026.09.11 → rubric-2026.09.18) — scores are not directly comparable.
Lenses
- Code Health 100 → 100 (+0.0)
- Architecture 100 → 100 (+0.0)
- Maturity 21 → 21 (+0.0)
- Readiness 55 → 58 (+3.3)
- Security 100 → 100 (+0.0)
Resolved (2)
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
New (1)
- Dependency hygiene PARTLY measured — SwiftPM pinning read, dependency currency NOT established
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
devxoul/Then 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 30 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 529bfcb6a47276296d202b94a9c49ad6a10b6da2 — the exact code this score is about.
- Scored under rubric-2026.09.18 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-cb25ca4feafa.