vbfox/ColoredPrintf
66.8
Adequate · 3 October 2026
546
lines of production code
F#
primary language
2
measurements over time
What this system is
This system is a .NET library that provides colored, printf-style console output using a state-machine-based writer. It supports formatted strings with dynamic color changes and integrates with modern .NET 10 tooling, including GitHub Actions for continuous integration and Expecto for testing.
Features
Introduce colored printf-style console output
The library now provides \colorprintf\ and \colorprintfn\ functions that allow printing formatted strings to the console with color changes using a \$foreground;background\[text\]\ syntax (e.g., \$red\[error\]\). It also supports \printf\-style format specifiers to inject \ConsoleColor\ values directly into the output. The implementation replaces the previous placeholder library code with a new state-machine-based writer that handles color stacks, escape sequences, and text accumulation.
src/BlackFox.ColoredPrintf · high confidence
Behavioural changes
Build system migrated from FAKE 4 to FAKE 5
The build scripts have been updated to use FAKE 5, replacing the previous FAKE 4-based infrastructure. This change involves removing custom helper modules for command-line argument handling and task definitions, and adopting the new FAKE 5 API for build targets, dependencies, and CI integration (including AppVeyor test result uploads).
build · high confidence
Migrated build system to FAKE 5 with GitHub Actions integration
The build process has been rewritten using FAKE 5, replacing the previous runner with a new F\#-based build script (Program.fs and Tasks.fs). This change introduces native integration with GitHub Actions for CI environments, updates the target framework to net10.0 (while retaining netcoreapp2.0 support when available), and modernizes the build pipeline to include explicit test result export (NUnit format) and improved dependency management via paket.
src/BlackFox.ColoredPrintf.Build · high confidence
Migration to .NET 10 and GitHub Actions
The project has been modernized to target .NET 10 (SDK version 10.0.302) and migrated its continuous integration from Travis CI and AppVeyor to GitHub Actions. The build system has also been updated to use .NET CLI tools for dependency management and execution, replacing the previous FAKE-based approach.
(repo-wide) · high confidence
Updated TestApp to demonstrate colored printf and interpolated string usage
The TestApp sample program has been updated to showcase the library's colorprintf functionality. It now demonstrates how to change text colors within strings, use sprintf-style format specifiers for variables, and apply colors using interpolated strings. Additionally, it shows how to specify colors dynamically using variables.
src/TestApp · high confidence
Test coverage
Migrated test suite to Expecto
The test project in src/BlackFox.ColoredPrintf.Tests has been ported from NUnit to the Expecto framework. This change includes new test files (IssuesRepro.fs, SimpleTests.fs, TestWriter.fs) that verify colored printf behavior, a new Program.fs entry point for running Expecto tests, and an update to paket.references to replace NUnit with Expecto and FSharp.Data.
src/BlackFox.ColoredPrintf.Tests · high confidence
Dependencies
Upgrade to .NET 10 and modernize build infrastructure
The project has been migrated from the legacy .NET Framework (v4.0/v4.5.2) to .NET 10, with the main library now targeting net461, netstandard2.0, and net10.0. This update replaces the old NUnit test runner with Expecto and switches the build system to FAKE 5 using the new SDK-style project format. Key dependency updates include FSharp.Core to version 10.1.302, FSharp.Data to 8.2, and the introduction of BlackFox.Fake.BuildTask and BlackFox.CommandLine for build tasks. The NuGet package now includes an icon and a readme file, and SourceLink is configured for better debugging support.
(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 67 → 67 (-0.7)
- Rubric changed (rubric-2026.09.15 → rubric-2026.10.1) — scores are not directly comparable.
Lenses
- Code Health 98 → 94 (-3.7)
- Architecture 99 → 99 (+0.6)
- Maturity 57 → 57 (+0.0)
- Readiness 63 → 63 (+0.0)
- Security 83 → 80 (-3.4)
Resolved (1)
- Documentation: no installation or build instructions (README.md)
New (2)
- ColoredWriter.writeChar (cognitive 21) (src/BlackFox.ColoredPrintf/ColoredWriter.fs)
- ColoredWriter.writeChar (cyclomatic 25) (src/BlackFox.ColoredPrintf/ColoredWriter.fs)
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
vbfox/ColoredPrintf 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 3 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 60d4c56eb0fd4060f7f3cf46c046b7feeb2a4980 — the exact code this score is about.
- Scored under rubric-2026.10.1 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-4f4226d619ea.