A terminal JSON viewer with columnar navigation like JSON Hero
Project description
JSON TUI
A terminal JSON viewer with columnar navigation, inspired by JSON Hero.
Features
- Columnar Navigation: Navigate nested JSON structures in a multi-column view
- Keyboard-driven: Vim-style keybindings (hjkl) and arrow keys
- Syntax Highlighting: Color-coded values by type (strings, numbers, booleans, null)
- Live Preview: See full values in the preview panel
- Path Breadcrumbs: Always know where you are in the structure
- Stdin Support: Pipe JSON directly from curl or other commands
Installation
# Clone and install with uv
git clone <repo>
cd json_tui
uv sync
# Or install in development mode
uv pip install -e .
Usage
# View a JSON file
json-tui data.json
# Pipe from stdin
curl https://api.example.com/data | json-tui --stdin
# Or use echo
echo '{"hello": "world", "nested": {"key": "value"}}' | json-tui -s
Keybindings
| Key | Action |
|---|---|
↑ / k |
Move up in current column |
↓ / j |
Move down in current column |
← / h |
Focus previous column |
→ / l |
Focus next column / expand |
Enter |
Expand selected node |
Backspace / Esc |
Collapse / go back |
? |
Show help |
q |
Quit |
Development
# Run directly with uv
uv run json-tui sample.json
# Or activate the venv
source .venv/bin/activate
json-tui sample.json
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
json_tui-1.0.0.tar.gz
(396.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
json_tui-1.0.0-py3-none-any.whl
(10.8 kB
view details)
File details
Details for the file json_tui-1.0.0.tar.gz.
File metadata
- Download URL: json_tui-1.0.0.tar.gz
- Upload date:
- Size: 396.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1031edb50761c96c5dcf42a973ed9f11b3d7c1ef210b96e4ef406a315a363f3
|
|
| MD5 |
18c6caa691ae4aa458ffe61f87201e46
|
|
| BLAKE2b-256 |
409b4a51721b1f60d298db88b3562ad56e9ec321a0d3af3bccec33aaab11fbd6
|
File details
Details for the file json_tui-1.0.0-py3-none-any.whl.
File metadata
- Download URL: json_tui-1.0.0-py3-none-any.whl
- Upload date:
- Size: 10.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
36631139903a88fd5906362af2951a75611783cd0ea9a582889bd24a3cab6504
|
|
| MD5 |
92890111099ad57baafe88ccf80d6896
|
|
| BLAKE2b-256 |
b2caa7f3bde1e9de597cddbc4cb3f19e3f686acbbbdd3033e6f6c4f7f87b3953
|