pyfx is a Python-native terminal JSON viewer (TUI) inspired by the fx tool, designed to inspect, browse, and query structured data directly from the command line.
It supports interactive navigation of JSON data along with JSONPath queries, making it useful for developers working with APIs, logs, or CLI output. It can be used both as a standalone CLI application and embedded as a component in Python-based terminal interfaces
This is free and open source software.
Key Features
- Interactive terminal-based JSON viewer with a text user interface for browsing structured data.
- Supports JSON input from files, standard input (pipes), and clipboard sources.
- JSONPath query support for filtering and extracting specific data within JSON documents.
- Keyboard-driven navigation with expandable and collapsible JSON nodes.
- Can be used as both a standalone CLI tool and a reusable Python module.
- Embeddable JSON viewer components for integration into custom Urwid-based TUIs.
- Configurable via YAML configuration files with theme and keybinding customization.
- Autocomplete support for building JSONPath queries interactively.
Website: github.com/cielong/pyfx
Support:
Developer: Yutian Wu
License: MIT License

pyfx is written in Python. Learn Python with our recommended free books and free tutorials.
Related Software
| JSON Tools | |
|---|---|
| jq | Lightweight and flexible JSON processor. It's like sed for JSON |
| fx | JSON viewer with streaming and mouse support |
| jaq | jq clone focused on correctness, speed, and simplicity. |
| gron | Transforms JSON into discrete assignments to make it easier to grep |
| gojq | Pure Go implementation of jq |
| jless | Command-line JSON viewer written in Rust |
| jnv | Navigates JSON offering a viewer and filter editor |
| JSON Editor | View, edit, format, and validate JSON |
| Dasel | Query, modify and transform structured data |
| jid | JSON incremental digger by using filtering queries |
| jo | Small utility to create JSON objects |
| jsonrepair | Repair malformed and invalid JSON documents |
| faq | Billed as a more flexible jq supporting additional formats |
| jello | Filter JSON and JSON Lines data with Python syntax |
| jq but an interoperable configuration format transcoder | |
| json-tui | JSON terminal UI |
| jqp | TUI playground to experiment with jq |
| emuto | Small language for manipulating and restructuring JSON and other data |
| svelte-jsoneditor | View, edit, format, transform, and validate JSON |
| qo | Query JSON, CSV, and TSV files using SQL |
| jql | Query and process JSON data |
| Janice | Desktop app for viewing large JSON files |
| unqery | Query and transform JSON data |
| Twig | Terminal JSON viewer and YAML viewer |
| jtc | Extract, manipulate and transform source JSON |
| pyfx | Python-native TUI JSON viewer |
| OTree | Interactive viewer for structured data |
| kirill | JSON validator |
| jshon | Parses, reads and creates JSON. It's designed to be as usable as possible |
| jsawk | Like awk, but for JSON |
| jiq | Interactive JSON query tool |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.