Skip to content
CAI
Software that uses CAICheck a score

CommunityVB/Community.VisualBasic

48.5

Weak · 28 September 2026

46.3k

lines of production code

VB.NET

primary language

4

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

Features

Added VB6-compatible runtime classes for application services, user identity, and type conversions

The Community.VisualBasic library now includes a suite of classes that implement VB6-compatible runtime functionality. This includes ApplicationBase, ConsoleApplicationBase, and AssemblyInfo for managing application state and metadata; User for handling current user identity and role checks; and a comprehensive set of type conversion utilities (BooleanType, ByteType, CharType, etc.) in the CompilerServices namespace that handle late-binding and casting logic. These additions provide the underlying infrastructure for the Visual Basic runtime, enabling features like command-line argument access, culture management, and object-to-type conversions consistent with legacy VB behavior.

Community.VisualBasic, ProjectTypeTests · high confidence

Initial release of Community.VisualBasic as an experimental, cross-platform alternative to Microsoft.VisualBasic

The repository is initialized with a new .editorconfig file that enforces consistent coding styles, indentation, and naming conventions for Visual Basic files. The solution file (Community.VisualBasic.sln) is created, organizing the main library, test projects, and solution items. The README.md is updated to explain that this is an experimental, community-driven project aiming to provide a cross-platform (including Linux) implementation of the Microsoft.VisualBasic namespace, distinct from the official Microsoft runtime, with a focus on .NET Standard 2.x and console applications.

(repo-wide) · high confidence

Test coverage

Added Visual Basic test suite for Community.VisualBasic

Added a new test project, Community.VisualBasic.Tests, containing a comprehensive suite of tests written in Visual Basic. The new tests cover various components including compiler services (BooleanType, ByteType, CharType, StructUtils), attributes (ComClass, DesignerGenerated, OptionCompare, OptionText, StandardModule, HideModuleName, MyGroupCollection, VBFixedArray, VBFixedString), collections, and FileIO utilities (FileSystem, SpecialDirectories, TextFieldParser). These tests verify the behavior of the Community.VisualBasic library's implementation of Visual Basic runtime features.

Community.VisualBasic.Tests · high confidence

Dependencies

Updated project files to target .NET 7.0 and .NET 5.0

The test and project configuration files have been updated to target .NET 7.0 and .NET 5.0, reflecting a shift in the supported runtime versions for the Visual Basic test suite and related projects. This change aligns the project files with the newer .NET versions, ensuring compatibility and leveraging the latest runtime features for testing and execution.

(dependencies) · medium 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 43 → 49 (+5.5)
  • Rubric changed (rubric-2026.08.15 → rubric-2026.09.16) — scores are not directly comparable.

Lenses

  • Code Health 62 → 73 (+10.4)
  • Architecture 92 → 96 (+4.0)
  • Maturity 42 → 47 (+4.9)
  • Readiness 24 → 33 (+9.2)
  • Security 100 → 73 (-26.7)

Resolved (122)

  • Bounded contexts not declared
  • Build status unknown
  • ClassTooLong: Interaction (Community.VisualBasic/Interaction.vb)
  • ClassTooLong: SR (Community.VisualBasic/Resources/SR.vb)
  • Coverage not measured
  • Duplicated block (10 lines × 2) (Community.VisualBasic/CompilerServices/ConversionResolution.vb)
  • Duplicated block (10 lines × 2) (Community.VisualBasic/CompilerServices/ObjectType.vb)
  • Duplicated block (10 lines × 2) (Community.VisualBasic/CompilerServices/ObjectType.vb)
  • Duplicated block (10 lines × 2) (Community.VisualBasic/CompilerServices/VBBinder.vb)
  • Duplicated block (10 lines × 4) (Community.VisualBasic/CompilerServices/ObjectType.vb)
  • Duplicated block (10 lines × 4) (Community.VisualBasic/CompilerServices/ObjectType.vb)
  • Duplicated block (10 lines × 4) (Community.VisualBasic/CompilerServices/ObjectType.vb)
  • Duplicated block (11 lines × 2) (Community.VisualBasic/CompilerServices/Utils.vb)
  • Duplicated block (12 lines × 2) (Community.VisualBasic/CompilerServices/ConversionResolution.vb)
  • Duplicated block (12 lines × 2) (Community.VisualBasic/CompilerServices/Conversions.vb)
  • Duplicated block (12 lines × 2) (Community.VisualBasic/CompilerServices/IDOBinder.vb)
  • Duplicated block (12 lines × 2) (Community.VisualBasic/CompilerServices/IDOBinder.vb)
  • Duplicated block (12 lines × 2) (Community.VisualBasic/CompilerServices/ObjectType.vb)
  • Duplicated block (12 lines × 2) (Community.VisualBasic/CompilerServices/Operators.vb)
  • Duplicated block (12 lines × 2) (Community.VisualBasic/OperatingSystemEx.vb)
  • …and 102 more

New (149)

  • Duplicated block (10 lines × 10) (Community.VisualBasic/CompilerServices/Operators.vb)
  • Duplicated block (10 lines × 2) (Community.VisualBasic/CompilerServices/ObjectType.vb)
  • Duplicated block (10 lines × 2) (Community.VisualBasic/CompilerServices/Operators.vb)
  • Duplicated block (10 lines × 2) (Community.VisualBasic/CompilerServices/VBBinder.vb)
  • Duplicated block (10 lines × 4) (Community.VisualBasic/CompilerServices/Operators.vb)
  • Duplicated block (10 lines × 5) (Community.VisualBasic/CompilerServices/IDOBinder.vb)
  • Duplicated block (10 lines × 5) (Community.VisualBasic/CompilerServices/ObjectType.vb)
  • Duplicated block (10 lines × 7) (Community.VisualBasic/CompilerServices/ObjectType.vb)
  • Duplicated block (10 lines × 7) (Community.VisualBasic/CompilerServices/ObjectType.vb)
  • Duplicated block (10–11 lines × 2) (Community.VisualBasic/CompilerServices/Operators.vb)
  • Duplicated block (10–11 lines × 4) (Community.VisualBasic/CompilerServices/Operators.vb)
  • Duplicated block (10–12 lines × 4) (Community.VisualBasic/CompilerServices/ObjectType.vb)
  • Duplicated block (11 lines × 10) (Community.VisualBasic/CompilerServices/Operators.vb)
  • Duplicated block (11 lines × 2) (Community.VisualBasic/CompilerServices/ConversionResolution.vb)
  • Duplicated block (11 lines × 2) (Community.VisualBasic/CompilerServices/Conversions.vb)
  • Duplicated block (12 lines × 2) (Community.VisualBasic/CompilerServices/IDOBinder.vb)
  • Duplicated block (12 lines × 2) (Community.VisualBasic/FileIO/FileSystem.vb)
  • Duplicated block (12 lines × 2) (Community.VisualBasic/OperatingSystemEx.vb)
  • Duplicated block (14 lines × 2) (Community.VisualBasic/CompilerServices/LateBinding.vb)
  • Duplicated block (14 lines × 2) (Community.VisualBasic/CompilerServices/Utils.vb)
  • …and 129 more

Architecture

  • Containers 0 added · 0 removed · contexts 0 added · 1 removed · edges 0 added · 0 removed

Removed bounded contexts (1)

  • Community.VisualBasic

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

Survey your own repository

CommunityVB/Community.VisualBasic 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 28 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 20d2a51dfc9f342848ad134952ceaa8d79302559 — the exact code this score is about.
  • Scored under rubric-2026.09.16 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-2d9048c36d26.