このプロジェクトについて
Hauserは、壁パネル、タブレット、スマートフォン向けに設計されたセルフホスト型のルームファーストHome Assistantダッシュボードです。家族向けの落ち着いた日常インターフェースとして位置づけられ、Home Assistantは運用者および管理者向けインターフェースとして残ります。このプロジェクトは最初の公開技術ベータ版(AGPLライセンスの趣味プロジェクト)であり、Docker ComposeまたはHome Assistant Appとしてインストールできます。
主な機能は次のとおりです。
- **ルーム**: 気候、照明、シーン、在室、窓の状態。それぞれが実際の照明に追従する3つの照明状態で描画されます。
- **ルーム画像**: ウィザードがスマートフォン写真からカスタムイラストを生成します。OpenAI(有料、任意)、Cloudflare Workers AI(無料枠)、または手動描画を使用できます。
- **Home Assistant連携**: 公式クライアント経由のWebSocket、調整を伴う楽観的コマンド、再接続処理、`sun.sun`による昼夜テーマ。
- **メディア**: Jellyfinライブラリ、シェルフ、詳細ビュー、レジューム付きHLS再生。HAメディアプレーヤーによるルームオーディオ。
- **エネルギー**: 実際の電力センサーによるライブ負荷と日次消費量。正直な空状態表示付き。
- **日常**: カレンダー、メモ、リマインダー、買い物リスト、洗濯通知。
- **ドキュメント**: PINで保護されたPaperless-ngx検索、プレビュー、ダウンロード、任意のコンパニオンサーバー経由のインポート。
- **デバイス**: UI内からエンティティの追加、非表示、名前変更、ルームへの割り当て、並べ替えが可能。
- **編集モードと使用モード**: 1つのスイッチで設定と操作を分離。使用モードでは設定用の扉が閉じられ、任意でアイドルタイムアウト付きPINの背後に置けます。
- **スタンバイ**: 時計、週ストリップ、メモ、買い物リストを備えた落ち着いたロック画面。任意で、OpenStreetMapデータから描画された自分の町の薄いストリートマップも表示。
- **2つのシェル**: 横長の壁パネルと片手操作のスマートフォンレイアウトが1つのデザインシステムを共有。
- **ホテルモード**: ホリデーアパート向けの任意のゲスト画面。Home Assistantカレンダーからの滞在、デフォルト拒否のデバイス解放、PINで保護された管理者セッション、ゲストチェックアウトを備えます。
アーキテクチャ: アプリはSvelte 5 + Viteで、UIとバックエンドの間に4層アダプター(エンティティストア、保留インテントオーバーレイ、コマンドキュー、交換可能バックエンド)を備えます。Home Assistantへの2つのトランスポートをサポートします。Home Assistant Appとして(Supervisor経由のサーバー専用接続)か、Docker Composeで(ブラウザが直接接続)です。サーバーは検証済みの家庭設定、ルーム画像ストア、スタンバイマップレンダラー、集中管理されたリマインダー、任意のNotion買い物ソース、PINで保護されたPaperless-ngxブリッジを保持します。連携認証情報はサーバー側に留まります。
インストール: サポートされる2つの経路 — Home Assistant Appとして(HA OS/Supervised向け)か、Docker Composeで(HA Container、通常のDockerホスト、NAS向け)。どちらも、言語選択、Home Assistant接続、エリア検出、ルーム確認、Jellyfin有効化、アトミックな設定アクティベーションを扱うガイド付きセットアップウィザードで終わります。リリースイメージは`ghcr.io/ralleur/hauser:v0.37.2`(現行)です。静的デモは、訪問者のHAに接続せず、シミュレートされたデバイスに対して実際のインターフェースを実行します。
ドキュメントには、wiki、デザインシステムドキュメント、インタラクション契約、パフォーマンス予算、インストール契約、設定リファレンス、開発パイロットガイドが含まれます。このプロジェクトは、パフォーマンス予算(タッチからフィードバックまで16 ms未満、transform/opacityのみ)、調整を伴う楽観的UI、すべてのサーフェスにわたる統一デザインシステムを重視しています。
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.