Firestoreのエミュに、まだJava 21入れてるの?「hidane」なら不要

hidane(火種)
Java なしで動く、Rust 製の Cloud Firestore エミュレーター
GitHub公式サイト
公開
β公開 2026-10-11(インストール手順も記載、正確なリリース日は本文になく、投稿日を使用)
作り手
hidane
対応
Mac・Linux・Windows
価格
無料(MIT OR Apache-2.0 ライセンス)
評価
GitHub のスター 1(2026-10-12)

どんなアプリか

hidane は、公式の Cloud Firestore エミュレーターの代わりに使うための、Rust 製の単一バイナリです。JVM は要りません。ローカルでの開発と CI のためのもので、本番のデータベースではありません。

firebase-tools 15 で、Java 21 未満のサポートが削除されました。ローカルでデータベースを動かすだけのために、JDK を入れる必要はないはずです。

hidane 公式サイト「なぜ hidane か」

公式と同じ gRPC・REST・WebChannel で通信し、firebase-tools の配下でも単体でも起動できます。hidane exec を使うと、そのコマンドの間に限り、java と公式の jar の代わりに hidane が起動します。エクスポートとインポートは公式と同じ形式で、公式エミュレーターと互いのエクスポートを読み合えます。

作り手の計測では、公式エミュレーター v1.22.0 はポートが開くまでに 0.74 秒、待機時に 95 MiB を使い、main の hidane は 5.5 ms、7.4 MiB です。リスナーを付けた状態で10万件を書き込むと、hidane は 4.9 秒で、バッチごとの時間は一定です。どの数値も実測値ですが、同じ条件で測ったものではないと公式サイトに書かれています。

互換性は、公式エミュレーターの応答を記録し、その記録をテストで hidane に対して再生して確かめています。v0.1.0 の時点で再生している記録は17件です。テストの裏付けがない互換性は主張しない、としています。

入れる前に

v0.1.0 では Security Rules に対応しておらず、firestore.rules の中身に関係なく、すべてのリクエストが許可されます。対応は v0.2 の予定です。Emulator UI のリクエストモニタも、まだ使えません。

v0.1.0 で公式と突き合わせて確認済みなのは、firebase-admin(Node)、@google-cloud/firestore、firebase-js-sdk などです。Go・Python・Java・iOS・Android・Flutter は、通信方式には対応しているものの、まだ誰もそのクライアントで動かしていない状態です。

対象は Cloud Firestore で、Realtime Database・Cloud Storage・Auth のエミュレーターは範囲の外です。macOS 版のバイナリはまだ署名されておらず、ブラウザでダウンロードした場合は quarantine 属性を外すコマンドが必要です。

hidane は独立したオープンソースプロジェクトで、Google LLC と提携しておらず、同社の承認も受けていません。