着ぐるみ天気予報を公開しました🐾
着ぐるみを安全に楽しむための天気予報Webアプリ「着ぐるみ天気予報(FursuitWeather)」を公開しました。
気温や湿度から着ぐるみ活動の安全度を判定し、屋外や屋内で今どれくらい活動できるかをひと目で確認できます。
本番環境はhttps://fursuit-weather.223n.tech/で公開しています。
着ぐるみと熱中症
着ぐるみは全身を覆い、汗が蒸発しにくいため、体温がこもりやすい装いです。
通常の気温予報だけでは、着ぐるみを着たときの体感や熱中症のリスクを判断しにくいという課題があります。
このアプリは、着ぐるみ特有のリスクを暑さ指数と活動時間の形で示し、無理のない範囲で楽しむための判断を助けることを目指しています。
何ができるのか
活動の安全度を指数で判定する
中心となるのは、暑さ指数(WBGT)をもとにした活動指数です。
- 屋外活動指数は、WBGTを5段階で評価します
- 屋内活動指数は、冷房のない会場での空調の目安を示します
- 活動可能時間は、連続して着られる時間の目安(45分、30分、20分、10分、または中止)を示します
- 洗濯乾燥指数は、着ぐるみの洗濯から乾燥までにかかる時間の目安を示します
判定には環境省のWBGT計算式を用い、通気性のないかぶりものには労働衛生の基準にならって11°Cの補正を加えます。
場所と日時を選んで確認する
- 地名や郵便番号で検索できます(郵便番号はzipcloudを利用します)
- GPSで現在地の予報を表示します(およそ1km単位に丸めて扱います)
- よく使う場所はブラウザに記憶できます
- 日時つきのURLで、特定の日時の予報を共有できます
- イベント向けの予報を事前に登録し、専用リンクから確認できます
- 1時間ごとの降水確率も表示します
イベントや会場で使う
- 会場表示モードでは、予報を自動で切り替えながらスライド表示します
- 強風、雷、急な高温などの注意を表示します
- 環境省の熱中症警戒アラートやPM2.5の情報と連携します
- 活動タイマーは、休憩のタイミングを知らせます
- 活動の前後に体調を記録できます
プライバシーへの配慮
位置情報は行動にかかわる繊細な情報です。
- 現在地はおよそ1km単位に丸め、サーバーへの保存もURLへの反映もしません
- 個人的なデータはブラウザ内だけに保存します
- 色覚多様性に配慮した配色と、キーボード操作に対応します
技術的なこだわり
ここからは、開発者向けに実装のこだわりを紹介します。
技術スタック
- 言語はJavaScriptとTypeScript、実行環境はNode.js 22以降です
- 本番はCloudflare Workersで動かし、デプロイにはwranglerを使います
- CI/CDはGitHub Actionsで動かします
- テストはVitestとPlaywright、静的解析はESLintで行います
データソース
- 気象データはOpen-Meteo(気象庁の数値予報モデルMSMおよびGSM、CC BY 4.0)を利用します
- 暑さ指数は環境省の計算式に、郵便番号の解決はzipcloudにそれぞれ依存します
その他の機能
- SNS共有向けに、判定を重ねたOG画像を動的に生成します
- 登録したイベントはICS形式でカレンダーに取り込めます
- バッジAPIを用意し、外部サイトに判定を埋め込めます
- 応急処置の手引きを載せた緊急時ページを用意します
- URLに?demo=1を付けると、デモ用のデータで動作を確認できます
おわりに
着ぐるみ天気予報は、着ぐるみを安全に、長く楽しむための判断を助けることを目指したアプリです。
気温だけではわかりにくい着ぐるみ特有のリスクを、指数と時間の形で示すことにこだわりました。
興味を持たれた方は、ぜひ次のリンクをご覧ください。
ライセンスはApache License 2.0です。