Skip to content
CAI
Software that uses CAICheck a score

efremidze/VisualEffectView

61.6

Weak · 1 October 2026

700

lines of production code

Swift

with JavaScript

2

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is a Swift library named VisualEffectView that provides SwiftUI and UIKit components for applying dynamic blur and glass visual effects to views. It exposes a high-level style-based API for system blur and glass effects, while retaining a customizable pipeline for fine-grained control over blur radius, tint, and saturation. The library is packaged as a framework with an accompanying example application to demonstrate its modern and legacy rendering capabilities.

Features

Added example app with modern and legacy visual effect demos

The Example location now includes a runnable SwiftUI application that demonstrates the VisualEffectView library. It features a main tab with a 'Modern' view showcasing dynamic blur controls (radius, tint alpha, saturation) and glass effects, alongside a 'Legacy' tab providing a simpler interface for testing basic blur and tint combinations.

Example · high confidence

Introduces style-based API and glass effect support

The library now supports a high-level \style\ property on \VisualEffectView\ and a corresponding \VisualEffect\ SwiftUI view, allowing users to easily apply system blur styles (\.systemBlur\) or the new glass effect (\.glass\) alongside the existing customizable blur pipeline. This change adds a new helper file for internal UIKit effect management and restructures the core view to preserve custom blur settings across style switches, while maintaining backward compatibility with the legacy initializer.

Sources · high confidence

Behavioural changes

Updated Xcode project structure for SwiftUI and framework embedding

The VisualEffectView project has been restructured to support modern Swift development and SwiftUI integration. The project now includes a dedicated SwiftUI view file (ContentView.swift) and a helper extension for SwiftUI compatibility (VisualEffectView+SwiftUI.swift) alongside the existing UIKit implementation. Additionally, the Example app target has been updated to explicitly embed the VisualEffectView.framework, ensuring the library is correctly packaged and available at runtime for demonstration purposes.

VisualEffectView.xcodeproj · high confidence

Updated Xcode workspace and build schemes

The project now includes a shared workspace configuration and defines explicit build schemes for both the VisualEffectView framework and the Example demo app. These changes standardize how the project is opened in Xcode and ensure that build, test, and archive actions are correctly scoped to their respective targets.

VisualEffectView.xcodeproj/xcshareddata · high confidence

Dependencies

VisualEffectView package updated to version 6.0.0 with iOS 14 and Swift 5.9 requirements

The VisualEffectView library has been updated to version 6.0.0. This release raises the minimum deployment target to iOS 14 and requires Swift 5.9, as reflected in the new Package.swift and VisualEffectView.podspec manifests. Users must ensure their projects are configured to support these minimum platform and language versions.

(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 60 → 62 (+1.1)
  • 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 55 → 55 (+0.0)
  • Readiness 40 → 44 (+4.3)
  • Security 97 → 97 (+0.0)

New (2)

  • Conflicting configuration models for the same entity. The VisualEffect type has two constructors that represent mutually exclusive or overlapping configuration strategies: one high-level style-based approach and one low-level parameter-based approach. This forces users to choose between two different ways to achieve similar visual results, creating ambiguity about which is the preferred or canonical way to configure an effect.
  • Inconsistent initialization patterns for the view. One constructor accepts a raw UIKit type (UIVisualEffect?), bypassing the library's abstraction (VisualEffect), while the default constructor takes no arguments. This breaks the abstraction layer, allowing users to inject raw UIKit objects directly, which may not be compatible with the library's update logic (updateUIView).

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

efremidze/VisualEffectView 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 1 October 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit cecddfe46d34d409a8f423660f2662462153f135 — 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-e569280dd5e2.