nomasystems/ndto
70.0
Strong · 2 October 2026
4.3k
lines of production code
Erlang
primary language
2
measurements over time
What this system is
This system is an Erlang library that parses JSON Schema specifications (specifically Draft-04) and generates corresponding validation code. It provides a modular architecture for handling various schema types and enforces runtime data validation against defined constraints. The project includes a comprehensive test suite using property-based testing to ensure the accuracy of both the parsing and generation processes.
Features
Initial release of ndto schema validation and code generation
This change introduces the core ndto library, enabling users to parse JSON Schema specifications (specifically Draft-04) and generate Erlang validation modules. The update adds the \ndto\_parser\ interface and \ndto\_parser\_json\_schema\_draft\_04\ implementation for reading schemas, \ndto\_generator\ for producing validation code, and \ndto\_validation\ for runtime checks. It also updates the application version to 0.4.0 and adds \compiler\ and \syntax\_tools\ as dependencies.
src · high confidence
Behavioural changes
Modularized NDTO generator into type-specific modules
The NDTO generator implementation has been refactored to split validation logic for different JSON Schema types into separate, dedicated modules (such as ndto\_generator\_array, ndto\_generator\_object, ndto\_generator\_string, and ndto\_generator\_integer). Each module implements the ndto\_generator behavior to handle specific schema keywords (e.g., min/max constraints, pattern matching, or nested property validation), replacing the previous monolithic structure with a modular architecture that improves code organization and maintainability.
_src/ndto\generator · high confidence
Test coverage
Added property-based tests for DTO validation logic; Added test configuration files for the test suite; Initial test suite for ndto validation and JSON Schema parsing.
Housekeeping
Add contribution guidelines and update build configuration
This change introduces a CONTRIBUTING.md file to provide developers with guidelines for reporting bugs, requesting features, and submitting code changes, including branch naming conventions and commit message standards. It also updates the project's build configuration (rebar.config) to include new dependencies (ncalendar, gradualizer, rebar3\_ex\_doc) and test dependencies (nct\_util, triq), adds CI badges and documentation links to the README, and updates the .gitignore to exclude the doc/ directory.
(repo-wide) · 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 64 → 70 (+6.1)
- Rubric changed (rubric-2026.09.12 → rubric-2026.09.18) — scores are not directly comparable.
Lenses
- Code Health 94 → 94 (+0.0)
- Architecture 100 → 100 (+0.0)
- Maturity 48 → 52 (+3.7)
- Readiness 61 → 78 (+16.8)
- Security 92 → 92 (+0.0)
Resolved (1)
- Coverage not measured — no coverage collector is wired up
New (2)
- Dependency hygiene PARTLY measured — rebar3 pinning read, dependency currency not (no rebar.lock-pinned Hex declaration to grade)
- Floating source dependency: ncalendar
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
nomasystems/ndto 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 2 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 e67f44ac541470ddd650677acc50596060b55301 — 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.