返回 Showcase
macOSiOSAndroid

Pry

使用 Perry 构建的快速原生 JSON 查看器。树形导航、搜索、键盘快捷键——从 TypeScript 编译为原生二进制文件。

功能

树形视图

可折叠、可导航的树形渲染,适用于深层嵌套的 JSON 结构。

搜索

对键和值进行全文搜索,即时高亮显示。

键盘快捷键

仅使用键盘即可导航、展开、折叠和复制。

剪贴板支持

将任意节点或子树以格式化 JSON 复制到剪贴板。

状态栏

显示节点数量、当前深度、文件大小和解析时间。

语法着色

按类型对值进行颜色编码——字符串、数字、布尔值、null。

构建方式

Pry 使用 TypeScript 编写,通过 Perry 编译为原生二进制文件。无 Electron,无 Web 视图,无 JavaScript 运行时。

📝

TypeScript 源码

使用 Perry 原生 UI API 的标准 TypeScript

Perry Compile

SWC 解析 → 类型解析 → Cranelift 代码生成

🖥️

原生二进制文件

无运行时依赖的独立可执行文件

pry.ts (simplified)

import { App, TreeView, SearchBar } from "perry/ui";

import { readFile } from "perry/fs";

const data = JSON.parse(readFile(process.argv[2]));

const app = new App("Pry", { width: 800, height: 600 });

app.addSearchBar({ placeholder: "Search JSON..." });

app.addTreeView(data, {

collapsible: true,

syntaxHighlight: true,

copyOnClick: true,

});

app.addStatusBar();

app.run();

平台支持

macOS

原生 AppKit 组件

可用

iOS

原生 UIKit 组件

可用

Android

原生 Views 组件

可用

截图

macOS 截图——即将推出

iOS 截图——即将推出

截图将随着 Pry 的持续开发而添加。请查看 GitHub 仓库获取最新信息。