# 人間OS診断

> 25問に答えるだけで、Big Fiveの5つの性格傾向と12タイプのキャラクターを表示する性格診断Webアプリ。

- 制作: [ワカメ](https://wakame.dev/)（個人で企画・開発）
- ステータス: 公開中
- 制作期間: 2026-09
- カテゴリ: Web, AI, Tool
- 使用技術: HTML, CSS, JavaScript (Vanilla), Canvas API, Cloudflare Workers
- 担当: 企画, 仕様策定, 診断ロジック設計, UI・演出実装, シェア画像・比較機能の実装, 公開

## 概要

「MBTIより根拠を意識しつつ、MBTIくらい結果を共有したくなる」をコンセプトにした性格診断です。性格心理学のBig Five（開放性・誠実性・外向性・協調性・情緒安定性）の考え方をベースに、25問の回答から5つの傾向を0〜100のスコアで算出します。Big Fiveは本来タイプ分けをしない理論のため、各タイプに典型プロフィールと軸ごとの重みを持たせ、重み付き距離が最も近い「キャラクター」を表示する方式にしました。回答をシミュレーションして12タイプの出現率が偏らないよう調整しています。結果はCanvasで1080×1350のシェア画像を生成でき、スコアだけをURLに入れた比較リンクで、サーバーなしに友達と「似ているところ・違うところ」を比べられます。回答データはブラウザ内だけで処理し、「相性○%」のような根拠のない数値や、優劣を感じさせる表現は使わない方針で作りました。

## 12タイプをif文で振り分けない

診断コンテンツでよくある作りは、スコアの高低をif文でつないでタイプを決める方法です。ただしこれは分岐を足すほど破綻し、どのタイプにも当てはまらない回答が出ます。

人間OS診断では、12タイプそれぞれに典型プロフィール（5軸それぞれの値）と軸ごとの重みを持たせ、回答者のスコアとの重み付き距離がいちばん近いタイプを選ぶ方式にしました。この形なら、どんな回答でも必ず12タイプのどれかに決まり、タイプを足すときも既存の分岐を壊しません。

調整したあとは、回答をランダム生成するシミュレーションを回して出現率の偏りを確認しています。現状は各タイプおおむね5〜12%の範囲に収まっています。特定のタイプばかり出る診断は、結果を共有してもらえません。

## 25問を最後まで答えてもらうための作り

質問はBig Fiveの考え方をベースに、5つの特性につき5問ずつの25問です。回答の傾き（どの選択肢も同じ向きに答えれば高得点になる状態）を防ぐため、逆転項目を混ぜ、採点時に反転してから合計し、0〜100に正規化しています。

離脱対策として、選択すると次の質問へ自動で進み、戻ることもでき、途中の回答は端末内に保存されます。ページを閉じても続きから再開できるので、25問を一気に答えなくて済みます。

## 結果を人に見せたくなるところまで作る

診断は結果を共有してもらえないと広がりません。結果ページではX共有に加えて、1080×1350の結果画像をブラウザ上で生成して保存できるようにしました。

友達との比較ページも用意しています。共有リンクには5軸のスコアだけを載せ、タイプはリンクを開いた側でスコアから再判定します。まだ診断していない人がリンクを開いた場合は、友達のタイプだけを見せて診断へ誘導し、診断後の結果ページ上部に比較が見られる旨のバナーを出します。

比較では、差が10以内の軸を「似ているところ」、20以上の軸を「違うところ」として並べます。相性を％では出していません。根拠のない数字は出さない方針にしました。

## ビルド工程を持たない

全体をHTML・CSS・JavaScriptだけで書いていて、ビルド工程がありません。フォルダをそのまま置けば動くので、数か月後に手を入れるときに依存パッケージの更新から始めることになりません。

## 成果

- wakame.dev 配下で公開中
- 12タイプの出現率をシミュレーションで調整（各約5〜12%）
- シェア画像生成と、サーバー不要の友達比較機能を実装

## リンク

- [サイト](https://wakame.dev/human-os/)

## このサイトについて

- [ワカメの詳細プロフィール](https://wakame.dev/ai-profile/index.html.md)
- [llms.txt](https://wakame.dev/llms.txt)
