Skip to content
CAI
Software that uses CAICheck a score

JordanMarr/FSharp.ChordParser

44.7

Weak · 3 October 2026

335

lines of production code

F#

primary language

2

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

ChordParser is a desktop and command-line tool designed to parse, transpose, and format musical chord charts. It processes text files containing chords and lyrics, allowing users to shift pitch by semitones and adjust formatting options such as accidentals and case. The system provides both a graphical interface built with Avalonia.FuncUI and a console application for batch or script-based processing.

Features

Initial release of ChordParser for transposing and formatting chord charts

This entry introduces the ChordParser application, a tool that parses text files containing chord charts (chords enclosed in parentheses) and lyrics. Users can process these files to transpose chords by a specified number of semitones, choose between sharp or flat accidentals for the output, and optionally convert lyrics to uppercase. The parser supports standard chord notation including root notes, tonalities (major, minor, diminished, augmented), extensions (e.g., 7, maj7), and bass notes (e.g., /F). The output is saved to a new file with 'ChordParser' appended to the original filename.

ChordParser · high confidence

Initial release of ChordParser with UI and Console applications

This commit introduces the initial structure of the ChordParser project, adding a solution file that defines three projects: the core ChordParser library, a ChordParser.Console CLI application, and a ChordParser.UI application. The UI is built using Avalonia.FuncUI, providing a graphical interface for parsing and transposing chord charts, while the console application utilizes FSharp.SystemCommandLine for command-line usage. A .gitignore file is also added to exclude build artifacts and IDE-specific files.

(repo-wide) · high confidence

New desktop UI for chord parsing with Avalonia.FuncUI

The ChordParser.UI project now provides a standalone desktop application built on Avalonia.FuncUI (targeting .NET 7.0). Users can interact with a new interface that displays an input text area for chord charts and a read-only output area for the parsed result. The UI includes controls to transpose the chart up or down, toggle between sharp and flat accidentals, switch case formatting, and reset the view to defaults, utilizing a dark Fluent theme.

ChordParser.UI · high confidence

Behavioural changes

Configured single-file publish for .NET 6 and default launch arguments

The ChordParser project now publishes as a single, self-contained executable for Windows x64 targeting .NET 6, simplifying deployment by bundling the runtime with the app. Additionally, the development environment is configured to automatically launch the application with default command-line arguments pointing to a sample 'Song.txt' file and specific parameters, streamlining the initial testing experience.

ChordParser/Properties · high confidence

Console app rewritten using FSharp.SystemCommandLine

The ChordParser.Console application has been rewritten to use the FSharp.SystemCommandLine library, replacing the previous implementation. This change updates the command-line argument parsing and execution flow, introducing options for specifying the input file path, transposition semitones, and preferred accidental, while removing the previous Xamarin project structure.

ChordParser.Console · high confidence

Dependencies

Migration to .NET 8 and updated UI dependencies

The project has been upgraded to target .NET 8.0 across all components (Console, UI, and core library). The UI project now utilizes Avalonia 11.0.4 and Avalonia.FuncUI 1.0.1, replacing previous versions, and includes settings for single-file, self-contained publishing. The core library continues to use FParsec 1.1.1, while the console application references FSharp.SystemCommandLine 2.0.0-beta5.0.

(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 47 → 45 (-2.5)
  • Rubric changed (rubric-2026.09.15 → rubric-2026.10.1) — scores are not directly comparable.

Lenses

  • Code Health 100 → 100 (+0.0)
  • Architecture 100 → 100 (+0.0)
  • Maturity 38 → 29 (-9.2)
  • Readiness 24 → 24 (+0.0)
  • Security 98 → 97 (-0.6)

Findings

  • No change — the same findings as the prior survey.

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

Survey your own repository

JordanMarr/FSharp.ChordParser 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 80d3db541f84e4a3fdd53d8c0d40ceabf758772b — 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.