- すべての分析をSQLだけで記述できる、DuckDBベースのオープンソースデータダッシュボードプラットフォームで、
- ビジネスインテリジェンス、埋め込み分析、自動レポート生成機能を含み、セルフホスト(Self-Hosted) をサポート
- Gitベースのワークフロー、JWTベースの行レベルセキュリティ、React SDKによるiframeなしの埋め込みなど、開発者フレンドリーな構成を提供
- PDF, PNG, CSV, Excel形式のレポート生成と、スケジュール通知およびパスワード保護リンク共有機能をサポート
- MPL-2.0ライセンスで公開されており、Docker実行だけで素早く試せるため、スタートアップやデータチーム向けの軽量BIツールとして有用
Shaper 概要
- ShaperはDuckDBを基盤に動作するSQL中心のデータ可視化・共有ツール
- ユーザーはSQLクエリだけでダッシュボードとチャートを作成可能
- 例のクエリでは
date_trunc, count(), BARCHART_STACKEDなどを使って週次セッション数を可視化
- オープンソースとして提供され、セルフホストが可能
- 公式ドキュメントは taleshape.com/shaper/docs で提供
主な機能
- ビジネスインテリジェンス
- SQL-FirstアプローチとAI-Readyな構造を備える
- Gitベースのワークフローを通じてバージョン管理とコラボレーションを支援
- 複数のデータソース間でクエリ実行が可能
- 埋め込み分析
- ホワイトラベリングとカスタムスタイルをサポート
- JWTトークンベースの行レベルセキュリティ(Row-level security) を提供
- JSおよびReact SDKを通じてiframeなしで埋め込み可能
- 自動レポート
- PDF, PNG, CSV, Excel形式のレポートを自動生成
- スケジュール通知およびレポート送信機能を提供
- パスワード保護リンクを通じて安全に共有可能
クイックスタート (Quickstart)
- インストール不要でDockerコマンドからすぐに実行可能
- Getting Started GuideとProduction Deployment Guideドキュメントを提供
サポートとホスティング
- Shaperは完全な無料オープンソース
- Taleshapeがマネージドホスティングおよび技術サポートサービスを別途提供
ライセンスと技術構成
- Mozilla Public License 2.0 (MPL-2.0) を適用
- 主な言語構成: Go (48.8%), TypeScript (48.1%), Python (1.0%) など
要約
- ShaperはMetabaseやSupersetに近いSQLベースのBIダッシュボードツールで、DuckDBの軽量性と高速性を活用
- 開発者フレンドリーな構成、簡単なデプロイ、オープンソースライセンスにより、スタートアップやデータ分析チームに適した代替手段
1件のコメント
Hacker News のコメント
このプロジェクトは本当に素晴らしい。特に PDFレポート生成 機能が印象的だ。
今では、どんな製品でもダッシュボードを自前で作るのは愚かに感じる。
エンタープライズ顧客はどうせ ERP への統合を望む。
私は以前から、顧客が自分で可視化を作れるよう 読み取り専用DB接続 を提供すべきだと主張してきた。
こうしたアプローチは10年前から標準になっているべきだったし、今のように LLM が普及した時代ではその必要性はさらに高い。
顧客も結局は人間だということを忘れてはいけない。
誰もまた別のアカウントを管理したいとは思わない。
分析と通知はプッシュベースであるべきで、自動生成されたレポートがメールで送られ、顧客が自分でダッシュボードを構成できる選択肢が必要だ。
デフォルトも重要だが、コンテキスト も同じくらい重要だ。
当時は Crystal Reports が広く使われ、ソフトウェアにバンドルされることも多かった。
ただし 共有SQLクエリリポジトリ がなかったため、データモデルをよく理解していないと時間を無駄にするか、同僚から直接もらうしかなかった。
SAP に買収されて以降は使っていない。
そのおかげで全社プロセスが一目で見渡せるようになり、部門間の協業速度が驚くほど速くなった。
今ではこうした権限を持つ人はほとんどいない。
顧客はこれによってカスタムレポート作成、データウェアハウス保管、通知・監査・規制対応などさまざまな作業を行える。
だから私は、中途半端な組み込み分析UIや制限の多い REST API より、こうしたパターンを好む。
上級顧客なら認証、モデリング、クエリを自分で処理できる。
オプションで PostgREST、Hasura、Microsoft DAB のような Data API を提供するとよい。
AI エージェントがデータ消費主体になる時代には、直接の読み取りアクセスが必須だ。
顧客データアクセスに料金や制限を設ける時代は終わったと思う。
プッシュベースの動作は、トランザクション環境から分析環境へデータを移すためにのみ使うべきだ。
単純な静的レポート程度なら、ウェアハウスはやりすぎだ。
多くのユーザーが Shaper をデータフィルタリング UI として使い、PDF、PNG、CSV にエクスポートしている。
現在は、これらのファイルを Shaper の task 機能でメッセージとして自動送信する機能を開発中だ。
この製品が Metabase の代替 なのか気になっていた。
私は Metabase をよく使うが、この製品はかなり違う感じがする。
DuckDB + DuckLake ベースの組み込みレイクハウス を備えているので、「DuckDB ベースの Metabase 代替」と呼べる。
Snowflake、Fivetran、BI ツールを別途購入してつなぎ込む必要がない 組み込みBI を目指している。
一方で Shaper は、すべての構成を SQLコードで定義 する。
設定はシンプルだが、SQL 中心のワークフローを好む人には非常に生産的だ。
素晴らしい仕事だ。
以前 Jorin にミートアップで会ったときは単なるアイデアだったのに、ここまで着実に発展したのを見ると驚かされる。
良いツールだ。同じようなアプローチの SQLPage にも触れておく価値がある。
SQLPage は UI 生成に重点を置いていて、DuckDB は使わない。
Shaper は 分析・ダッシュボード中心 で、PDF 生成機能と DuckDB を使う。
Metabase も DuckDB と高い互換性 がある。
MotherDuck の metabase_duckdb_driver のおかげだ。
クエリ → レポート生成の流れを スタンドアロン で回せるのか気になる。
HTML だけを出力したり、React コンポーネントをそのままプロジェクトで使えたりするといいと思う。
私は VSCode 拡張 を作っているので参考にしたい。
MPL ライセンスとは本当に素晴らしい、ありがとう。
DuckDB は使ったことがあるが Shaper は初めてなので、何に使うツールなのか 気になった。
README には詳しい説明があまりない。
SQL は DuckDB 上で実行されるので、DuckDB のすべての機能を活用できる。
コードベースで作業したい人に向いた ミニマルなツール だ。
社内向けダッシュボードにも、顧客向けの組み込みダッシュボードにも対応できる。
私たちの会社では、顧客向け Metabase ダッシュボードの代替として Shaper を統合 した。
このシンプルさが本当に気に入っている。
私も似たようなものを作っていたが、DuckDB のサイズ のせいで断念していた。
でも結局は使うことになりそうだ。