【リリースノート】Baby Monitor Web App v1.0.0 - DockerとGCPですぐに使える見守りアプリ、堂々リリース!

はじめに
この度、リアルタイムで赤ちゃんの様子を確認できる「Baby Monitor Web App」の記念すべきファーストリリース v1.0.0 を公開しました!🎉
本プロジェクトは、手軽にセットアップできる見守りカメラのWebアプリケーションを提供することを目的としています。Docker Composeによる簡単なローカル環境構築から、Terraformを使ったGCPへの本格的なデプロイまで、幅広いユースケースに対応可能です。
主な変更点 (Highlights)
v1.0.0は最初のリリースであり、アプリケーションの基盤となる多くの機能が実装されました。
-
✨ モダンなWeb UI:
ライブモニター機能に特化した、シンプルで直感的に操作できるWebインターフェースを実装しました。不要な要素を削ぎ落とし、赤ちゃんの様子をリアルタイムで確認することに集中できます。 -
🐳 簡単セットアップ:
docker-compose.ymlを同梱しており、docker compose upコマンド一つで、必要なサービス(Webサーバー、ストリーミングゲートウェイ等)をすぐに起動できます。 -
☁️ クラウド対応:
Terraformスクリプト (.tfファイル) を提供しており、Google Cloud Platform (GCP) 上にVMインスタンスを構築し、アプリケーションをデプロイする環境をコードで管理できます。 -
🔌 豊富なサンプルスクリプト:
example/ディレクトリには、Gemini APIを利用したリアルタイム映像・テキストストリーミングのサンプルや、Tapo社製ネットワークカメラ (C210など) の映像をRTSPで受信したり、スナップショットを撮影したりする実用的なPythonスクリプトを同梱しています。
技術的な詳細
今回のリリースに含まれる技術的な変更点をいくつかピックアップしてご紹介します。
✨ 新機能 (Features)
-
Web UIの全面刷新 (62841ef, dc186a3, 8444847)
- 従来のWebサイトのようなヒーローセクションやフッターなどをすべて削除し、見守りカメラとしての機能に特化したシングルページアプリケーションの構成に変更しました。
- UIの視認性を高めるため、FontAwesomeアイコンを追加し、各種ボタンやラベルを改善しました (c92090c)。
-
TerraformによるGCP環境構築 (f91454f, b4793af)
-
main.tfやvariables.tfなどのTerraform設定ファイルを追加し、GCP上にVMを構築してアプリケーションをデプロイする仕組みを導入しました。これにより、インフラの再現性と管理性が大幅に向上しています。
-
-
各種サンプルスクリプトの追加
- Gemini APIのストリーミング機能を試せる
stream_video.pyを追加しました (6206c65)。 - Tapoカメラの静止画を取得するための
tapo_c210_snapshot.pyを追加し、定期的な監視や記録に活用できるようになりました (d642f15)。
- Gemini APIのストリーミング機能を試せる
🔧 改善点 (Maintenance & Refactoring)
-
CI/CDプロセスの整備 (56c453f, 7d1f620)
- GitHub Actionsワークフローを導入・改善し、リリースノートやヘッダー画像の自動生成・コミットなど、リリース作業の一部を自動化しました。
-
インフラ設定の最適化
- Docker Compose (
e3a41f9) の設定を更新し、デモ用の動画アセットをコンテナにボリュームマウントするように変更しました。 - Nginx (
4e0bb48) の設定ファイルにAPIリクエストをゲートウェイに転送するためのプロキシ設定や、デモアセットを配信するための設定を追加しました。 - RTSPの認証情報がログに出力されないように修正し、セキュリティを向上させました (e4ca609)。
- Docker Compose (
-
ドキュメントの拡充 (5e324bd, d0e5c5c)
- プロジェクトの全体像、セットアップ手順、各機能の使い方などを記載したREADMEを大幅に更新しました。
- 特に、Terraformを利用したGCPへのデプロイ手順や、Tapoカメラのサンプルスクリプトに関するドキュメントを日本語で手厚く追記しています (6ac966c, 556bbf0)。
まとめ
Baby Monitor Web App v1.0.0は、プロジェクトの土台を築く重要なファーストリリースです。ローカルでの手軽な試用からクラウドでの本格運用まで、柔軟に対応できる基盤が整いました。
今後は、ユーザーからのフィードバックを元に、さらなる機能追加や安定性の向上を目指していきます。ぜひ一度お試しいただき、ご意見やご感想をお寄せください!
📚 参考リンク
Discussion