marcosgriselli/ViewAnimator
53.4
Adequate · 27 September 2026
896
lines of production code
Swift
primary language
4
measurements over time
What this system is
Features
Added tvOS example app with UI and assets
The tvOS example project was restructured to include a functional user interface and all necessary asset catalogs. The main screen now features a UICollectionView displaying a grid of images, accompanied by 'Animate' and 'Reset' buttons that trigger view animations. The app's visual assets have been updated to include tvOS-specific icons, top-shelf images, and a launch image, while the main storyboard and view controller logic were added to support the new layout.
Example/tvOS · high confidence
Adds core animation capabilities and configuration
Introduces a new animation framework for iOS, providing a public API to animate views using transforms, scale, and rotation. The update adds a \UIView\ extension with methods to trigger standard and spring-based animations, as well as keyframe-based sequences. It also includes helper extensions for \UITableView\ and \UICollectionView\ to retrieve visible cells by section, and defines an \AnimationType\ enum to specify animation styles. Default animation parameters, such as duration, offset, and spring damping, are now managed via a \ViewAnimatorConfig\ class.
Sources · high confidence
Automated iOS library release process via Fastlane
Fastlane configuration has been added to automate the release of the iOS library. The new setup includes lanes for testing (scan) and for releasing new versions (patch, minor, major) that handle version bumping, git tagging, and pushing to CocoaPods. A separate lane allows for immediate release of the current version, which includes a check to prevent duplicate tags.
fastlane · high confidence
iOS example app and test suite added
The iOS example application is now included in the repository, providing a complete demo of the library's capabilities. This includes the standard iOS application entry point (AppDelegate), storyboard-based UI for a main view, collection view, and table view controllers, along with custom cell implementations and asset catalogs. Additionally, the test suite has been reorganized into a dedicated ViewAnimatorTests directory, containing functional tests that verify the preservation of view transforms during animations.
Example/iOS, ViewAnimatorTests · high confidence
Removals
Removed legacy Xcode project file
The \Example/ViewAnimator.xcodeproj/project.pbxproj\ file has been deleted. This removes the old Xcode project configuration for the example app, likely as part of a project structure update or migration to a newer build system.
Example/ViewAnimator.xcodeproj · high confidence
Behavioural changes
Removed legacy iOS storyboards and view controller
The example app's legacy iOS UI files have been removed. Specifically, the LaunchScreen.xib, Main.storyboard, and the associated ViewController.swift file were deleted, indicating a shift away from using these specific interface builder files for the example application.
Example/ViewAnimator · high confidence
Removed placeholder files from ViewAnimator
The ViewAnimator module has removed the placeholder files .gitkeep and ReplaceMe.swift from the Classes directory, indicating a cleanup of initial project scaffolding.
ViewAnimator · high confidence
Restructured Xcode project and build schemes
The Xcode project file (project.pbxproj) and associated workspace configuration files have been reorganized. This includes renaming the iOS example scheme to 'ViewAnimator-iOS', updating the scheme's build configuration to target the 'ViewAnimator-iOS' app, and adjusting the workspace data to reference the project correctly. Additionally, the test Info.plist was moved and renamed to 'ViewAnimator\_Info.plist' within the project directory, and the workspace settings were updated to disable automatic context creation.
ViewAnimator.xcodeproj · high confidence
Updated project documentation and configuration files
The repository's README.md has been significantly expanded to include usage examples, installation instructions for CocoaPods, Carthage, and manual setup, as well as sections for animations, contributors, and project details. Additionally, the .gitattributes file was added to configure language detection for Swift files, and the .gitignore file was updated to include paths for Carthage, Swift Package Manager, and fastlane, while removing references to the Pods directory.
(repo-wide) · high confidence
Dependencies
Updated build and dependency configuration for ViewAnimator 3.1.0
The project's build and dependency configuration has been updated to support ViewAnimator version 3.1.0. This includes a new \Package.swift\ for Swift Package Manager integration, an updated \ViewAnimator.podspec\ that adds tvOS 9.0 deployment support, specifies Swift versions 4.0, 4.2, and 5.0, and corrects the repository source URL. Additionally, a \Gemfile\ was added to manage Ruby dependencies including \fastlane\ and \cocoapods\, with a corresponding \Gemfile.lock\ pinning specific versions of these and their transitive dependencies.
(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 46 → 53 (+7.5)
- Rubric changed (rubric-2026.08.15 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 99 (-0.7)
- Architecture 80 (new)
- Maturity 52 → 50 (-2.5)
- Readiness 17 → 38 (+21.3)
- Security 100 → 82 (-18.0)
Resolved (5)
- Dimension evaluation failed
- No automated tests
- No exposed public API
- No tests found
- Test reliability not included
New (23)
- Coverage not measured — Swift suite
- Critical CVE: [GHSA redacted] (Gemfile.lock)
- Duplicated block (14 lines × 2) (Sources/ViewAnimator.swift)
- Duplicated block (26 lines × 2) (Example/iOS/AppDelegate.swift)
- Duplicated block (9 lines × 2) (Sources/ViewAnimator.swift)
- High CVE: [GHSA redacted] (Gemfile.lock)
- High CVE: [GHSA redacted] (Gemfile.lock)
- High CVE: [GHSA redacted] (Gemfile.lock)
- High CVE: [GHSA redacted] (Gemfile.lock)
- High CVE: [GHSA redacted] (Gemfile.lock)
- High CVE: [GHSA redacted] (Gemfile.lock)
- High CVE: [GHSA redacted] (Gemfile.lock)
- Low cohesion: AppDelegate (LCOM4 6) (Example/iOS/AppDelegate.swift)
- Low cohesion: AppDelegate (LCOM4 6) (Example/tvOS/AppDelegate.swift)
- Low cohesion: CollectionViewController (LCOM4 4) (Example/iOS/ViewControllers/CollectionViewController.swift)
- Low cohesion: ViewController (LCOM4 6) (Example/tvOS/CollectionViewController.swift)
- Medium CVE: [GHSA redacted] (Gemfile.lock)
- Medium CVE: [GHSA redacted] (Gemfile.lock)
- Medium CVE: [GHSA redacted] (Gemfile.lock)
- No ADRs found
- …and 3 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
marcosgriselli/ViewAnimator 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 27 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 653a71588ecfd81dbbbcc9348b9f3cb0245b0a13 — 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-d00c643c3f66.