Show original
Try the app

FursuitWeather
Enjoyed this article?
Use "Request tipping" to ask the author to set up tip receiving.

AI translation
解決したかったこと なぜ作ろうと思ったか こだわったところ
Try the app

FursuitWeather
Enjoyed this article?
Use "Request tipping" to ask the author to set up tip receiving.
A web service that forecasts "Is it safe to wear a fursuit today?" beyond just temperature.
It adds fursuit-specific corrections to the Wet Bulb Globe Temperature (WBGT) heat index and displays in 5 levels the feasibility of outdoor/indoor activities and guidelines for continuous activity duration.
Public URL: https://fursuit-weather.223n.tech/
Inside a fursuit, even when the outside temperature is 25°C, it feels like the height of summer.
The heat becomes trapped due to the full-body fabric covering and the structure that prevents airflow from reaching the wearer, causing body temperature to rise without the person realizing it.
Yet the only basis for judgment was gut feeling: "It's hot today, so I need to be careful." Weather apps tell you the temperature and precipitation probability, but they don't tell someone wearing a fursuit how many more minutes they can move.
So I created a service that calculates the risk of wearing a fursuit from meteorological data and displays it down to "how many more minutes," providing concrete guidance.
Based on the Wet Bulb Globe Temperature (WBGT) with fursuit-specific clothing correction applied, it makes the following determinations:
Corrected WBGT Determination | Continuous Activity Time Guidelines
There are also low-temperature determinations for winter. Fursuits generate heat even in cold conditions, so attention is needed to sweat-induced chilling, frostbite, and low-temperature degradation of the fabric.
Additionally, it displays hourly forecasts, daily summaries up to 3 days ahead, air conditioning necessity (assuming indoor spaces without cooling), how quickly laundry dries, and estimated drying time for full-body fursuit washing.
Safety-related information is cross-checked with the Ministry of the Environment's heat stroke alert announcements.
In regions where official announcements are issued, the band displays the announcement itself rather than an estimated value.
It calculates the heat index using the same WBGT estimation formula (Ono et al. 2014) as the Ministry of the Environment's heat stroke prevention information site, and adds +11°C, the clothing correction value from the Ministry of Health, Labour and Welfare's "Basic Measures for Heat Stroke Prevention in the Workplace" that corresponds to hooded vapor-impermeable coveralls.
The activity time guidelines were determined by cross-referencing municipal fursuit operation manuals (30 minutes or less per session, 10–20 minutes in summer) with the Ministry of Health, Labour and Welfare's approach to rest periods. All thresholds and coefficients are consolidated in one place with citations, and the basis for judgments can be traced in public documentation.
The values used in judgments adopt the most stringent option for that day and time slot.
When forecasts cannot be obtained, rather than continuing to display old values, it explicitly indicates "unable to retrieve."
To prevent the reasoning "I managed 45 minutes last time, so I can today," the wording is aligned so that past records are not used as grounds for relaxing today's guidelines.
Because it handles safety information, accessibility is treated as a functional requirement.
Judgments never rely on color alone; symbols (◎○△✕) and text are always included together, using color universal design palettes.
Low-temperature judgments are marked with a thermometer icon to distinguish them from high-temperature judgments by shape as well.
Screen reader support goes beyond just being readable to ensuring "it reads correctly." For example, many speech synthesizers mispronounce "着ぐるみ" (fursuit) as "ちゃくぐるみ" instead of "きぐるみ," and "(水)" (Wednesday) gets read as "みず" (water). So while the screen display remains unchanged, only the reading is replaced with "きぐるみ" and "水曜日."
When providing a forecast from the current location, coordinates are rounded to 2 decimal places (approximately 1 km) immediately after retrieval.
The rounded values are not stored in the browser or URL.
Wearing records, packing lists, and day-of boards are all stored only on that device and never sent to the server.
What proved effective during development was machine-verified tests for duplicate wording and thresholds.
The same numerical values are scattered across constants, HTML, documentation, and API descriptions, so CI fails if only one is changed.
Discrepancies in safety-critical numbers are prevented without relying on reviewer attention.
Open the top page and the forecast for the default location appears.
The location can be selected from major cities, searched by city name or postal code, or chosen from the current location.
Even in environments where the weather API cannot connect, appending ?demo=1 allows you to check screen behavior with fixed demo data.
Event organizer requests for listing are accepted via GitHub issue templates.
Listed events can be used from the list, calendar (.ics), and judgment badge.
The Ministry of the Environment's alerts currently only cross-check the same-day 5 AM announcement.
I'm considering also supporting the advance notice issued at 5 PM the previous day for the next day.
Note that this service's forecasts are guidelines. For actual judgment, prioritize the on-site feel and measurements, as well as the wearer's own physical condition.
気温だけでは分からない「今日、着ぐるみを着て大丈夫か」を予報するWebサービスです。
暑さ指数(WBGT)に着ぐるみ用の補正を加えて、屋外・屋内の活動可否と連続活動時間の目安を5段階で表示します。
公開URL: https://fursuit-weather.223n.tech/
着ぐるみ(ファースーツ)の中は、外気温が25℃でも体感は真夏並みになります。
全身を覆う生地と送風の届かない構造のせいで熱がこもり、本人は自覚しないまま体温が上がっていきます。
それなのに、判断のよりどころは「今日は暑いから気をつけよう」という肌感覚しかありませんでした。天気アプリは気温と降水確率を教えてくれますが、着ぐるみを着た人にとって何分まで動けるのかは教えてくれません。
そこで、気象データから着ぐるみ着用時のリスクを計算し、「あと何分」まで踏み込んで表示するサービスを作りました。
暑さ指数(WBGT)に着ぐるみの着衣補正を加えた値で、次のように判定します。
補正後のWBGT判定連続活動時間の目安
冬向けの低温判定もあります。着ぐるみは低温下でも発熱するため、汗冷えや凍傷、生地の低温劣化に注意が要ります。
このほか、時間別予報、3日先までの日別サマリー、空調のない屋内を想定した冷房要否、洗濯物の乾きやすさと着ぐるみ全身洗いの乾燥時間の目安も表示します。
安全に関わる情報は、環境省の熱中症警戒アラートの発表状況とも突合します。
公式の発表がある地域では、推定値ではなく発表そのものとして帯を出します。
環境省の熱中症予防情報サイトと同じWBGT推定式(小野ら2014)で暑さ指数を計算し、厚生労働省「職場における熱中症予防基本対策要綱」の着衣補正値のうち、フード付き蒸気不透過つなぎ服にあたる +11℃ を加えます。
活動時間の目安は、自治体の着ぐるみ運用マニュアル(1回30分以内、夏季は10〜20分)と、厚生労働省の要綱に基づく休憩の考え方を突き合わせて決めました。しきい値と係数はすべて出典付きで1か所に集約してあり、判定の根拠は公開ドキュメントで追えます。
判定に使う値は、その日・その時間帯で最も厳しいものを採用します。
予報が取れないときは、古い値を表示し続けるのではなく「取得できていない」ことを明示します。
「前回は45分いけたから今日も」という判断を招かないよう、過去の記録を今日の目安を緩める根拠に使わない文言でそろえています。
安全情報を扱うため、アクセシビリティを機能要件として扱っています。
判定は色だけに頼らず、記号(◎○△✕)と文字を必ず併記し、カラーユニバーサルデザインの配色を使います。
低温側の判定には温度計マークを添えて、暑さ側と形でも区別します。
スクリーンリーダー対応も、単に読めることを超えて「正しく読まれるか」まで踏み込みました。たとえば「着ぐるみ」は多くの音声合成が「ちゃくぐるみ」と誤読し、日付の「(水)」は「みず」と読まれます。そこで画面表示はそのままに、読み上げだけを「きぐるみ」「水曜日」へ差し替えています。
現在地から予報を出すとき、座標は取得した直後に小数2桁(約1km)へ丸めます。
丸めた値はブラウザにもURLにも保存しません。
着用記録・持ち物リスト・当日ボードも、すべてその端末の中だけに保存し、サーバーへは送りません。
作っていて効いたのは、文言としきい値の複製箇所を機械検証するテストです。
定数・HTML・ドキュメント・APIの説明に同じ数値が散らばるため、片方だけ直したときにCIが落ちるようにしてあります。
安全に関わる数値の食い違いを、レビューの注意力に頼らずに防げます。
トップページを開くと既定の地点の予報が出ます。
地点は主要都市の選択、都市名・郵便番号での検索、現在地から選べます。
気象APIに接続できない環境でも、?demo=1を付ければ固定のデモデータで画面の動きを確認できます。
イベント主催者からの掲載依頼はGitHubのissueテンプレートで受け付けています。
掲載したイベントは、一覧・カレンダー(.ics)・判定バッジから使えます。
環境省のアラートは現在、当日5時発表分のみを突合しています。
前日17時に出る翌日分の予告にも対応したいと考えています。
なお本サービスの予報は目安です。実際の判断は、現場の体感・実測と、着用者本人の体調を優先してください。