診療科判断アプリ
概要
「診療科判断アプリ」は、ユーザーが入力した症状から適切な診療科をAIが提案し、日々の健康状態を記録・管理できるWebアプリケーションです。体調が優れない時に「どの病院の何科に行けば良いか」という悩みを解決し、自身の健康管理をサポートすることを目的としています。
作成の背景・目的
突然の体調不良や、長引く不調。そんな時、どの診療科を受診すれば良いか迷った経験はありませんか?また、日々の細かな体調の変化を記録し、診察時に医師へ正確に伝えたいというニーズもあります。
本アプリケーションは、これらの課題を解決するために開発されました。
- 目的1:受診のハードルを下げる
AI(Google Gemini)を活用し、入力された症状に基づいて受診すべき診療科の候補を提示することで、利用者が適切な医療機関へスムーズにアクセスできるよう支援します。
- 目的2:日々の健康管理をサポート
健康記録カレンダー機能により、体温、症状、服薬履歴などを手軽に記録・管理できます。これにより、自身の健康状態の推移を把握し、医師への的確な情報提供を可能にします。
- 目的3:必要な情報へのクイックアクセス
診療科と地域を指定して、関連する病院の情報を素早く検索できる機能を提供します。
機能一覧
本アプリケーションは、主に以下の3つの機能を搭載しています。
1. 症状診断機能
- ユーザーが自由記述した症状テキストを、Google Gemini APIに送信します。
- AIが症状を分析し、推奨される診療科を最大3つ、その理由と共に提案します。
- 総合的なアドバイスや注意点も合わせて表示します。
- ユーザー自身が取得したGemini APIキーを利用します。(キーはブラウザのローカルストレージにのみ保存されます)
- 診断結果から、提案された診療科で直接「病院検索」を行える連携機能を備えています。
2. 病院検索機能
- 「地方」「都道府県」「市区町村」「診療科」の4つの条件で絞り込み検索が可能です。
- 市区町村データはHeartRails Geo APIを利用して動的に取得します。
- 検索ボタンを押すと、指定された条件でGoogle検索を実行するためのリンクを生成・表示します。
3. 健康記録カレンダー機能
- 月ごとのカレンダー形式で、健康記録を直感的に管理できます。
- 日付、時間、記録内容を登録できます。
- 記録はブラウザのローカルストレージに保存され、ブラウザを閉じてもデータは保持されます。
- カレンダー上で記録がある日付はハイライト表示されます。
- 特定の日付の記録を一覧で確認でき、各記録の編集・削除が可能です。
使用技術
本アプリケーションは、モダンなWebフロントエンド技術のみで構築された静的なWebサイトです。
- フロントエンド: HTML5, CSS3, JavaScript (ES6+)
- フレームワーク/ライブラリ: なし (Vanilla JS)
- API:
- Google Gemini API (gemini-1.5-flash-latest): AIによる症状分析・診療科提案
- HeartRails Geo API: 住所データ(市区町村)の取得
- データストレージ: ブラウザ
localStorage
(APIキー、健康記録の永続化)
- その他:
Fetch API
を用いた非同期通信
デモ動画
[https://youtu.be/K0RJee7Q–g]
インストール方法・使用方法
インストール
本アプリケーションはサーバーサイドの処理を必要としないため、特別なインストール作業は不要です。
- ZIPファイルをダウンロードして展開します。
index.html
ファイルを任意のWebブラウザで開きます。
使用方法
症状から診療科を判断する
- APIキーの準備: Google AI Studio にアクセスし、ご自身のGoogleアカウントでGemini APIキーを無料で取得します。
- キーの保存: アプリの「症状から診療科を判断」画面を開き、取得したAPIキーを入力して「保存」ボタンをクリックします。
- 症状の入力: テキストエリアに、ご自身の症状をできるだけ詳しく入力します。(例: 3日前から頭痛がひどく、吐き気もします。)
- 診断実行: 「診療科を判断」ボタンをクリックすると、AIによる分析結果が表示されます。
病院を検索する
- 「病院検索」画面を開きます。
- 「地方」「都道府県」「市区町村」「診療科」をそれぞれドロップダウンメニューから選択します。
- 「検索」ボタンをクリックすると、Google検索結果へのリンクが表示されます。
健康記録をつける
- 「健康記録カレンダー」画面を開きます。
- 「新規記録」欄で、日付と記録したい内容(例: 微熱あり、鎮痛剤を服用)を入力します。
- 「記録を追加」ボタンをクリックすると、カレンダーと下部の一覧に記録が保存されます。
- 記録の修正や削除は、一覧に表示されている各記録の「編集」「削除」ボタンから行えます。
開発者情報
- 名前: [ryooooou]
- GitHub: [https://github.com/ryooooou/]
- 連絡先: [csry25808@g.nihon-u.ac.jp]