kvx#

Explore structured data interactively in your terminal.

kvx is a terminal-based UI for exploring JSON, YAML, TOML, NDJSON, CSV, and JWT data in an interactive, navigable way. It presents data as key-value trees that you can expand, collapse, and inspect directly in the terminal.

Go Report Card License Release


Quick Install#

macOS / Linux (Homebrew)#

brew install oakwood-commons/tap/kvx

Windows (winget)#

winget install OakwoodCommons.kvx

From Source#

go install github.com/oakwood-commons/kvx@latest

Or download a binary from GitHub Releases.


30-Second Example#

# Render a YAML file as a table
kvx data.yaml

# Explore interactively
kvx data.yaml -i

# Evaluate a CEL expression
kvx data.yaml -e '_.items[0].name'

# Output as JSON
kvx data.yaml -e '_.metadata' -o json

Key Features#

  • Multi-format — Auto-detects JSON, YAML, TOML, NDJSON, CSV, and JWT
  • Interactive TUI — Navigate, search, filter, and evaluate expressions in the terminal
  • CEL Expressions — Use Common Expression Language for dynamic querying and filtering
  • Multiple Output Formats — Table, list, tree, Mermaid diagrams, CSV, YAML, JSON
  • Themes — Built-in themes (midnight, dark, warm, cool) with full customization
  • Schema Hints — JSON Schema-driven column display (headers, widths, alignment)
  • Embeddable — Use kvx as a Go library in your own applications
  • Shell Completion — Bash, Zsh, Fish, and PowerShell support

Documentation#

Tutorials#

Reference#