REST APIで検索を作るのは意外と面倒です。GETパラメータの中に検索条件を設定しますが、複雑になればなるほど簡単ではなくなります。すべてANDなら良いですが、ORまで追加しようと思うと実装が大変です。 そんな中登場したのがJsonLogicです。JSONを使ってクエリパラメータを指定します。その実装例としてSquirrel Byteを紹介します。

Squirrel Byteの使い方

上に書いてあるJSONがクエリパラメータになります。

表示は右下にあるチェックボックスで変更できます。

結果の件数を変更すればちゃんと反映されます。

asやgroup byなども用意されています。

Squirrel ByteではJsonLogicの実証実験として、Hacker Newsのデータを利用しています。JsonLogicはselect/where/group_by/order_by/limitをパラメータとしており、まるでSQLのように書けます。GraphQLのようにも見えますが、REST APIとの親和性が高そうです。

Squirrel ByteはGo/JavaScript製のオープンソース・ソフトウェア(MIT License)です。

Squirrel Byte adamlouis/squirrelbyte: a tool for gathering & exploring data