Showcase로 돌아가기
macOSiOSAndroid

Pry

Perry로 구축된 빠른 네이티브 JSON 뷰어. 트리 탐색, 검색, 키보드 단축키 — TypeScript에서 네이티브 바이너리로 컴파일.

기능

트리 뷰

깊이 중첩된 JSON 구조를 위한 접기 가능하고 탐색 가능한 트리 렌더링.

검색

키와 값에 대한 전문 검색 및 즉시 하이라이트.

키보드 단축키

키보드만으로 탐색, 펼치기, 접기, 복사.

클립보드 지원

모든 노드나 하위 트리를 포맷된 JSON으로 클립보드에 복사.

상태 바

노드 수, 현재 깊이, 파일 크기, 파싱 시간 표시.

구문 색상 표시

타입별 색상 구분 — 문자열, 숫자, 불리언, null.

빌드 방식

Pry는 TypeScript로 작성되고 Perry로 네이티브 바이너리로 컴파일됩니다. Electron 없음, 웹 뷰 없음, 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 리포지토리를 확인하세요.