Skip to content
CAI
Software that uses CAICheck a score

NathanFlurry/VisualProgrammingLanguage

40.5

Weak · 1 October 2026

13.9k

lines of production code

Swift

primary language

2

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is a legacy educational codebase centered around the WWDC18 playgroundbook, which provided visual programming tutorials and machine learning models via the VPLEditor framework. Although the core content and associated resources were completely removed in 2018, the repository persists with recent activity focused on fixing source code within that deprecated playgroundbook structure. Consequently, the system currently serves as a maintained archive of obsolete educational material rather than an active development platform.

How it got here

2018 — WWDC18 playgroundbook development and removal

10 changes.

This period focused on the creation and refinement of the WWDC18 playgroundbook, including the initial release of the VPLEditor framework and the addition of machine learning models and visual programming tutorials. Significant effort was spent updating chapter content, such as introducing custom visual nodes and revising the introduction and conclusion sections. The period concluded with the complete removal of the WWDC 2018 playgroundbook content, deleting the associated chapters and resources.

July 2025 — 9 commits (3 fixes) modifying WWDC18.playgroundbook/Contents/Sources

1 change.

A change to existing behaviour in WWDC18.playgroundbook/Contents/Sources — 9 commits (3 fixs), 31 files.

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 35 → 41 (+5.6)
  • Rubric changed (rubric-2026.09.11 → rubric-2026.09.18) — scores are not directly comparable.

Lenses

  • Code Health 98 → 96 (-2.6)
  • Architecture 96 → 97 (+1.6)
  • Maturity 22 → 38 (+15.8)
  • Readiness 8 → 14 (+6.5)
  • Security 85 → 85 (+0.0)

New (12)

  • CodeOutputView.stylize (cognitive 17) (VPL/Rendering/CodeOutputView.swift)
  • DisplayNodeCanvas.finishConnection (cognitive 16) (VPL/Rendering/Node/DisplayNodeCanvas.swift)
  • DisplayNodeCanvasOverlay.draw (cognitive 16) (VPL/Rendering/Node/DisplayNodeCanvasOverlay.swift)
  • DisplayNodeCanvasOverlay.findTarget (cognitive 52) (VPL/Rendering/Node/DisplayNodeCanvasOverlay.swift)
  • DisplayNodeCanvasOverlay.findTarget (cyclomatic 19) (VPL/Rendering/Node/DisplayNodeCanvasOverlay.swift)
  • DisplayNodeSocket.canConnectTo (cognitive 18) (VPL/Rendering/Node/DisplayNodeSocket.swift)
  • Documentation: no licence statement (README.md)
  • Duplicated block (10 lines × 2) (VPL/Rendering/Node/DisplayNodeSocket.swift)
  • Duplicated block (7 lines × 2) (VPL/Rendering/Node/Implementations/ControlFlowNodes.swift)
  • OCRRequest.detectTextHandler (cognitive 16) (VPL/OCR/OCRRequest.swift)
  • UIImage.trimWhiteRect (cognitive 26) (VPL/OCR/ImageUtils.swift)
  • ValueType.canCast (cognitive 18) (VPL/Data/ValueType.swift)

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

Survey your own repository

NathanFlurry/VisualProgrammingLanguage 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 5e0cf615e9e897544ac2b7c16a6e56947fa8c719 — 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.