# ynqa/jnv

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/ynqa-jnv).**

6,044 stars · 73 forks · Rust · MIT

## Links

- GitHub: https://github.com/ynqa/jnv
- awesome-repositories: https://awesome-repositories.com/repository/ynqa-jnv.md

## Description

jnv is an interactive terminal application for querying and filtering JSON data using jq expressions. It combines a keyboard-driven JSON browser with a real-time jq filter editor, allowing users to navigate, expand, and collapse JSON structures while simultaneously writing and previewing filter results. The tool reads JSON from files or standard input, including JSON Lines format, and provides immediate visual feedback as filters are typed.

The application distinguishes itself by integrating jq filter development with live preview and auto-completion, suggesting completions for identifiers, object keys, and array indices based on the current JSON structure. It also offers clipboard integration, enabling users to copy either the current filter expression or the filtered JSON output with a single key press. The interface is fully customizable through a TOML configuration file, allowing adjustments to key bindings, editor appearance, viewer styling, and debounce timing without recompilation.

jnv supports writing filtered results to standard output on exit for piping to other commands, and its event-driven pipeline processes filter changes asynchronously to maintain responsiveness. The tool is built around a tree-based JSON viewer with collapsible nodes and keyboard navigation, making it suitable for exploring complex nested data structures directly in the terminal.

## Tags

### Part of an Awesome List

- [jq Filter Completions](https://awesome-repositories.com/f/awesome-lists/devtools/search-libraries/auto-complete-libraries/jq-filter-completions.md) — Writing and testing jq filter expressions with auto-completion and instant preview of results. ([source](https://cdn.jsdelivr.net/gh/ynqa/jnv@main/README.md))
- [JSON Lines Parsers](https://awesome-repositories.com/f/awesome-lists/data/json/local-json-parsing/json-lines-parsers.md) — Reading JSON data from files, standard input, or streams including JSON Lines format for processing.
- [Command Line Tools](https://awesome-repositories.com/f/awesome-lists/devtools/command-line-tools.md) — Interactive JSON filter with navigation and autocompletion.
- [System Utilities](https://awesome-repositories.com/f/awesome-lists/devtools/system-utilities.md) — Interactive JSON filter.

### Data & Databases

- [Interactive Data Querying Tools](https://awesome-repositories.com/f/data-databases/interactive-data-querying-tools.md) — An interactive terminal application for querying and filtering JSON data using jq expressions with real-time preview.
- [JSON Browsers](https://awesome-repositories.com/f/data-databases/json-document-stores/json-search-indices/json-browsers.md) — A keyboard-driven JSON browser that lets users navigate, expand, and collapse JSON structures in the terminal.
- [JSON File Processors](https://awesome-repositories.com/f/data-databases/json-file-processors.md) — Accepts JSON data from a file path or piped stdin, including multiple JSON structures like JSON Lines. ([source](https://cdn.jsdelivr.net/gh/ynqa/jnv@main/README.md))
- [Collapsible JSON Editors](https://awesome-repositories.com/f/data-databases/json-file-processors/collapsible-json-editors.md) — Renders JSON data as an interactive tree with collapsible nodes and keyboard navigation for browsing nested structures.
- [jq Query Engines](https://awesome-repositories.com/f/data-databases/sql-query-execution-engines/in-memory-execution-engines/jq-query-engines.md) — Embeds the jq query language runtime to parse and execute filter expressions against JSON data.
- [JSON](https://awesome-repositories.com/f/data-databases/streaming-parsers/json.md) — Reads JSON input incrementally from files or stdin, handling multiple JSON objects per stream including JSON Lines.

### Development Tools & Productivity

- [Interactive JSON Browsers](https://awesome-repositories.com/f/development-tools-productivity/path-matching-tools/json-path-navigation/interactive-json-browsers.md) — Opens a JSON file or stream and lets users browse its structure with keyboard-driven navigation and folding. ([source](https://cdn.jsdelivr.net/gh/ynqa/jnv@main/README.md))
- [Terminal UI Frameworks](https://awesome-repositories.com/f/development-tools-productivity/terminal-ui-frameworks.md) — Renders a full-screen terminal interface with keyboard input, layout, and real-time display updates for JSON browsing.

### DevOps & Infrastructure

- [Debounced Filter Pipelines](https://awesome-repositories.com/f/devops-infrastructure/event-filtering-rules/debounced-filter-pipelines.md) — Provides the core event-driven pipeline that debounces and compiles jq filters for real-time preview.

### Graphics & Multimedia

- [JSON Filter Previews](https://awesome-repositories.com/f/graphics-multimedia/real-time-image-filtering/json-filter-previews.md) — A tool that applies jq filters to JSON input and updates the output instantly as the filter is typed.

### User Interface & Experience

- [Live Query Previews](https://awesome-repositories.com/f/user-interface-experience/live-preview-renderers/live-query-previews.md) — Applies a jq filter to JSON data and updates the displayed result in real time as the user types. ([source](https://cdn.jsdelivr.net/gh/ynqa/jnv@main/README.md))
- [Live Query Previews](https://awesome-repositories.com/f/user-interface-experience/real-time-prefix-filtering/live-query-previews.md) — Applies the current jq filter to input data and updates the output immediately as the filter is typed. ([source](https://cdn.jsdelivr.net/gh/ynqa/jnv@main/README.md))
