Skip to content
CAI
Software that uses CAICheck a score

AngelMunoz/JDeck

64.5

Adequate · 3 October 2026

2k

lines of production code

F#

primary language

2

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

JDeck is a .NET library that provides JSON encoding and decoding capabilities for F\# applications. It supports multi-targeting across .NET Standard 2.0 and recent .NET versions, utilizing System.Text.Json for compatibility. The system offers structured error handling for decoding failures and includes comprehensive test coverage for various data types and decoding patterns.

Features

Introduces JSON encoding and structured error handling for decoding

JDeck now supports encoding F\# values to JSON via the new \JDeck.Encoding\ module, which provides functions to create \JsonNode\ objects from primitives, sequences, and maps. Additionally, the decoding API has been refactored to use a detailed \DecodeError\ type instead of simple strings, allowing users to access specific context like property names and indices when decoding fails, and introducing \DecodeError\-based decoder types for more robust error collection.

JDeck · high confidence

Test coverage

Expanded test coverage for JDeck decoding, encoding, and auto-decoding capabilities

Added comprehensive test suites in the JDeck.Tests project to validate the library's JSON handling features. This includes new tests for auto-decoding complex types (such as nested maps, unions, and custom decoders), extensive coverage for the decode builder syntax (use, bind, and), and validation of specific decoding functions like decodeAt and decodeAtKey. The changes also add tests for encoding various primitive types, objects, and mixed-type arrays, as well as verifying correct handling of optional values and nulls across required and optional decoders.

JDeck.Tests · high confidence

Dependencies

Updated test dependencies and expanded multi-target framework support

The JDeck library now targets netstandard2.0, net8.0, net9.0, and net10.0, with FSharp.Core updated to version 9.0.100 and System.Text.Json added for netstandard2.0. The JDeck.Tests project has upgraded Microsoft.NET.Test.Sdk to 17.14.1, MSTest packages to 3.9.3, and coverlet.collector to 6.0.4, while also adding FsToolkit.ErrorHandling 5.0.0 and including several new test source files.

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

Lenses

  • Code Health 70 → 70 (+0.0)
  • Architecture 100 → 100 (+0.0)
  • Maturity 62 → 62 (+0.0)
  • Readiness 59 → 59 (-0.1)
  • Security 79 → 75 (-4.1)

Resolved (2)

  • Documentation: no installation or build instructions (README.md)
  • Documentation: no usage examples (README.md)

New (1)

  • Outdated: Ionide.KeepAChangelog.Tasks

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

Survey your own repository

AngelMunoz/JDeck 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 f35a56eff0d4bec2d33a021706e3ee6b0626091e — 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.