ynqa/jnv
51.9
Weak · 29 September 2026
2k
lines of production code
Rust
primary language
2
measurements over time
What this system is
This system is a terminal-based JSON viewer and query tool that provides an interactive interface for exploring and filtering JSON data. It features a modular architecture with a query editor, completion navigation, and asynchronous background processing for suggestions. The application supports configuration via TOML files, including customizable keybindings and timing parameters, and allows output to be piped to other commands while maintaining a terminal user interface.
Features
Add duration configuration serialization support
A new duration configuration module has been added to the configuration system, enabling the serialization and deserialization of time durations using human-readable string formats. This allows users to specify duration values in configuration files using standard string representations (e.g., "1h", "30m") which are automatically converted to internal duration types.
src/config · high confidence
Removals
Removal of demo tape file
The demo tape file (tapes/demo.tape) has been removed from the repository. This file previously contained a scripted demonstration of the jnv tool using kubectl, including specific terminal settings and interaction steps.
tapes · high confidence
Removal of legacy jnv components
The \keymap.rs\, \render.rs\, and \trie.rs\ files in the \src/jnv\ module have been deleted. This removes the previous keymap handling, rendering logic, and trie-based query search implementation from the jnv component.
src/jnv · high confidence
Behavioural changes
Complete architectural rewrite of the JSON viewer application
The application has been completely rewritten from the ground up, replacing the previous monolithic \Jnv\ struct and \promkit\-based rendering engine with a modular, async-first architecture. This change introduces a new component-based design featuring dedicated modules for the query editor, completion navigator, JSON viewer, and a central event dispatcher. The new implementation leverages \promkit-widgets\ for UI primitives, \jaq\ for JSON query execution, and \rustix\ for Unix-specific terminal handling. Key behavioral improvements include asynchronous background loading of JSON paths for suggestions, debounced query processing and resize handling, and a robust stdout redirection mechanism (\--write-to-stdout\) that allows the TUI to render on the terminal while piping final JSON results to downstream commands. Configuration is now managed via a structured \Config\ type with TOML support, allowing users to customize keybinds, editor modes, and reactivity timings.
src · high confidence
Dependencies
Major dependency overhaul and configuration restructuring
The application has undergone a significant dependency update, replacing the legacy 'j9' JSON processor with the 'jaq' suite (jaq-core, jaq-json, jaq-std) and swapping the 'gag' library for 'rustix' to handle standard I/O. Core libraries have been upgraded, including 'clap' to v4.6.0, 'anyhow' to v1.0.102, and 'promkit-widgets' to v0.5.0, while new dependencies such as 'arboard' (for clipboard support), 'dirs' (for config file paths), and 'duration-string' have been introduced. Additionally, the build configuration has been updated to enable Fat LTO for optimization, and the project version has been bumped to 0.7.1.
(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 56 → 52 (-4.0)
- Rubric changed (rubric-2026.09.10 → rubric-2026.09.18) — scores are not directly comparable.
Lenses
- Code Health 94 → 94 (+0.0)
- Architecture 100 → 97 (-2.7)
- Maturity 55 → 54 (-1.4)
- Readiness 41 → 32 (-9.4)
- Security 64 → 70 (+5.9)
- Performance 100 (new)
Resolved (1)
- Documentation: no usage examples (README.md)
New (7)
- Outdated: anyhow
- Outdated: clap
- Outdated: futures
- Outdated: rustix
- Outdated: serde
- Outdated: tokio
- Outdated: toml
Changes since last survey
- 3 commits — 3 feature/other, 0 fixes
By area
- (root) — 2 commits
- (repo) — 1 commit
Notable commits
- change: Merge pull request #128 from Likio3000/docs/jnv-usage-correction-20260923
- change: docs: fix write-to-stdout file redirection example
- change: docs: introduce vy before README overview
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
ynqa/jnv 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 29 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 76bbf8577d13943da68bc3eca7a9e294cfe55d27 — 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-5ff527f25b99.