dashbitco/nimble_options
68.0
Adequate · 3 October 2026
1.2k
lines of production code
Elixir
primary language
2
measurements over time
What this system is
NimbleOptions is an Elixir library designed for validating and documenting configuration options. It provides a robust type system for defining schemas, generating structured validation errors, and producing formatted documentation. The system ensures data integrity through comprehensive validation rules and supports sensitive data handling via value redaction.
Features
New documentation generation and structured validation errors
This release introduces NimbleOptions.Docs, a new module that generates formatted documentation from option schemas, supporting nested levels, subsections, deprecation notices, and custom type documentation. It also replaces the previous string-based error handling with a new NimbleOptions.ValidationError struct, which provides structured error details including the key, value, and keys path, and supports redacting sensitive values in error output.
_lib/nimble\options · high confidence
Behavioural changes
Expanded type system and schema options in NimbleOptions
NimbleOptions introduces several new validation types including \:map\, \:string\, \:boolean\, \:integer\, \:float\, \:timeout\, \:pid\, \:reference\, and \nil\, alongside enhanced support for \{:or, subtypes}\ and \{:list, subtype}\. The library also adds new schema options such as \:type\_doc\ for customizing documentation, \:type\_spec\ for overriding generated typespecs, and \:redact\ for hiding sensitive values in error messages. Additionally, the \:rename\_to\ option has been removed, and the \:one\_of\ type has been renamed to \:in\.
lib · high confidence
Test coverage
Added tests for documentation generation and validation error redaction; Added tests for schema validation and error reporting.
Dependencies
Initial release of NimbleOptions with dependency and configuration setup
This entry introduces the NimbleOptions library (version 1.1.1) for the first time, establishing its core configuration and development dependencies. The project now targets Elixir 1.15 and includes dev/test dependencies for documentation generation (ex\_doc) and code coverage reporting (excoveralls, castore). It also configures Hex package metadata (maintainers, license, links) and sets up ExDoc formatting, marking the initial public availability of this options validation tool.
(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 → 68 (+0.6)
- Rubric changed (rubric-2026.09.15 → rubric-2026.10.1) — scores are not directly comparable.
Lenses
- Code Health 97 → 97 (+0.0)
- Architecture 69 → 69 (+0.0)
- Maturity 59 → 59 (+0.0)
- Readiness 67 → 69 (+2.4)
- Security 100 → 100 (+0.0)
Resolved (1)
- Documentation: no installation or build instructions (README.md)
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
dashbitco/nimble_options 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 825c05837f236c612c6ac2855735ec6cf7f2be69 — 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-8fe32cd45d00.