アプリ紹介
← アプリ一覧へ
Windows / ブラウザ

shiboq

jq のクエリを書きながら結果をその場で確認できるアプリ

shiboq のスクリーンショット

名前は必要な部分を「絞る(しぼる)」と、JSON を扱う道具 jq の q を合わせた造語。

どんなアプリ?

  • JSON から必要な部分を取り出す「jq」という書き方を、試しながら書けるアプリ。デスクトップ版(Microsoft Store)と、インストール不要のブラウザ版があります。
  • JSON を貼り付けて書き方を入力すると、手が止まったタイミングで自動的に実行され、結果が表示されます。
  • 実行ボタンを押す必要はなく、書いては結果を見て直す、を繰り返せます。

画面

  • 5つのエリアに分かれています。左が「保存」と「サンプル」、中央上が元の「JSON」、中央下がその「スキーマ」。
  • 右上が「jqクエリ」(取り出し方を書く欄)、右下が「実行結果」。
  • 中央下のスキーマには、JSON に含まれるキー(項目名)とその種類が一覧で表示されます。JSON Schema 形式でコピーすることもできます。
  • 貼り付けた JSON は「整形」ボタンで読みやすく並べ直せます。

書きながら助けになる機能

  • いま書いているクエリが参照しているキーが、スキーマの一覧で色付きで示されます。
  • クエリ欄では、その JSON に含まれるキー名や jq のよく使う関数が入力候補として出ます。
  • 書き間違えて動かないときは、間違いの内容が表示され、結果は直前に成功したものが残ります。
  • 結果が文字列のときは、引用符を外した「生出力」表示に切り替えられます(表形式で取り出したときに読みやすくなります)。

学べるサンプルとヘルプ

  • 「サンプル」タブに、値の取り出し・配列・絞り込み・集計・正規表現など 10 章・43 個の例題があります。
  • 例題を選ぶと JSON とクエリが読み込まれ、解説と「やってみよう」を見ながら自分で書き換えて試せます。
  • 「? ヘルプ」から、構文の早見表・よく使う関数・困ったときの Q&A を確認できます。

保存

  • 残しておきたい状態は「+ 保存」ボタン(または Ctrl+S)で保存します。自動では保存されません。
  • 保存するとき名前を付けられます。省略した場合は、そのときのクエリが一覧に表示されます。
  • 一覧をクリックすると、JSON・クエリ・結果の3つがまとめて元に戻るので、前の状態からやり直せます。
  • 保存したものはパソコンの中(ブラウザ版ならブラウザの中)に残り、閉じても消えません。いらなくなったものは削除できます。

そのほか

  • jq を別途インストールする必要はありません(アプリに内蔵されています)。
  • デスクトップ版はインターネットにつながなくても使えます。ブラウザ版でも JSON やクエリがどこかへ送られることはありません。
  • 保存一覧の幅はドラッグで変えられ、次に開いたときも保たれます。

技術情報

  • Go 1.24 + Wails v2 のデスクトップアプリ。画面は Svelte 5(runes)+ Vite 7、UI は Flowbite Svelte + Tailwind CSS 4、エディタは Monaco Editor。
  • jq エンジンは Go 製の gojq を組み込み(jq 1.7 準拠)。入力が 500ms 止まると自動で実行します。
  • JSON からキー名と型のツリーを推論してスキーマを表示。クエリを解析して参照しているキーを取り出し、ハイライトします(文字列補間や分割代入にも対応)。
  • 保存した項目は ~/.shiboq/saved/{UUID}.json に 1 件 1 ファイルで保存。
  • ブラウザ版は gojq を WebAssembly にして同じエンジンで動かし、保存した項目は IndexedDB に保存します。
  • Windows での実行には WebView2 ランタイムが必要です(Windows 11 は標準搭載)。
  • v* タグの push で GitHub Actions が exe と Microsoft Store 用の MSIX をビルド。main への push でブラウザ版を GitHub Pages に公開します。ライセンスは MIT。