Period Care (冷やし中華チーム)

https://github.com/Kyorochan-star/period-tracker-app

Swift

GitHub

AWS

Figma

Python

ワンタップ生理記録+5つの選べるモードで愚痴まで聞きます!

尾崎里紗

TaisukeFujise

金崎祐香

推しアイデア

生成AIがモードに応じて生理に関する愚痴や相談を返信します。

作った背景

既存アプリは記録に手間がかかり、メンタルケアも不足していました。

推し技術

高速APIを構築するPython/FastAPI、愚痴機能を実装するのに必要だったGPT-4です。

プロジェクト詳細

プロジェクト内容

「今日、生理でつらい…」 そのひと言から、心と身体をそっと支えるアプリをつくりました。 わたしたちのアプリは、

共感 × テクノロジー

をコンセプトにした、 AIサポート型 生理管理アプリです。

image

なぜ作ったのか(問題意識と独自性)

既存サービス課題①:体調だけでなく、メンタル面も含めて管理できるアプリがない。 生理前や生理期間中にイライラして八つ当たりしてしまう現象と、共感能力が高い生成AIは相性がいいのではないかと考えました。

既存サービス課題②:生理期間中、毎日ログインして記録する必要があった。 ズボラユーザー向けに生理が始まった日を記録したら、予測された期間は記録され、終了日だけ必要に応じて編集する形がいいと考えました。

既存サービス課題③:産婦人科にかかる際、いつ生理期間があったか半年ほど報告する必要がありますが、その際一々タップして、月毎のカレンダーを巻き戻す手間がありストレスでした。 そこでいつからいつまで生理期間だったのか一覧で分かるようにした方いいのではないかと考えました。

私達の独自性: 生成AIによるメンタルケア、毎日記録する手間をワンタップ記録と自動予測で解消しました。これにより、心身ともに充実した生理ライフをサポートします。

機能紹介

1. GPT共感返信


王子様モード、彼氏モード、お母さんモード、おばあちゃんモード、保健室の先生モードから選んで、つらい気持ちをそのまま入力すると、最適で寄り添った返答を自動生成します。

2. 生理周期と症状の記録
  

生理開始と終了日をワンタップで記録。記録データをもとに、次回の生理日を予測します。産婦人科にかかる際に便利なデータエクスポート機能も搭載しました。

技術解説

フロントエンド:Swift, Figma

本プロジェクトのフロントエンドは、ユーザーが直感的に操作でき、シンプルでありながらも、心理的な安心感を覚えるデザインを重視しています

1. Swift

iOSアプリケーション開発の主要言語としてSwiftを採用。

2. Figma

UI/UXデザインのツールとしてFigmaを使用。 プロジェクトのデザインの詳細については、以下のFigmaボードで確認できます。

https://www.figma.com/board/ONfeOxI91eIwWzkL4uQ0uI/%E5%86%B7%E3%82%84%E3%81%97%E4%B8%AD%E8%8F%AF?node-id=0-1&p=f&t=I8R1O8PMm6sUIk0c-0

フロントエンド担当の2人とも、Swift,Figma共に初心者&ハッカソン初参加でありながら、手を挙げチャレンジしてくださいました😭😭

バックエンド:Python, AWS(Lambda)

1. Python

バックエンドの主要言語として採用

2. FastAPI

APIの設計・実装にFastAPIフレームワークを使用

4. AWS Lightsail

一部のコンポーネント(例: FastAPIアプリケーションのホスティングや、より複雑なバックエンド処理)のデプロイにLightsailを利用

5. 生成AI(OpenAI API)

ユーザーの感情入力に対して、GPT-4を使い心理的に安心感のある返答を生成。

6. Prompt Engineering

以下の「モード」に合わせて、GPT-4からの返答を調整するためのプロンプトエンジニアリングを適用しています。

①王子様モード ②彼氏モード ③お母さんモード ④おばあちゃんモード ⑤保健室の先生モード

<アーキテクチャ図> image

チームの良かった点と課題点

本プロジェクトは、野良チームとして活動し、メンバー全員が初心者という状況でありながらも、多くの成果と学びを得ることができました。

良かった点

1. 定期的な進捗確認

野良チームでありながらも、定期的に進捗を確認する機会を設けることで、メンバー間の認識のずれを最小限に抑えることができました。

2. 不明点の積極的な共有

分からないことを「分からない」と率直に言える環境が醸成され、互いに助け合いながら課題を解決していくことができました。これにより、個々のスキルアップにも繋がり、チーム全体の生産性⤴️に貢献しました。

3. センシティブな話題に関する意見交換

「生理」というセンシティブな話題に対しても、オープンに意見交換ができる場が作られたことは、多様な視点を取り入れたプロダクト開発に繋がりました。

課題点

1. 技術的な学習コスト

メンバー全員が初心者であったため、各技術スタック(AWS Lambda、FastAPI、Swiftなど)の学習に時間を要しました。これにより、開発初期段階での進捗が計画よりも遅れました。

2. 役割分担とタスク管理

野良チームであるがゆえに、明確な役割分担やタスク管理の経験が不足しており、効率的な開発プロセスの確立に試行錯誤する場面がありました。

3. デプロイと運用に関する知見の不足

AWSの各サービス(Lambda, Lightsail, Cognitoなど)を使ったデプロイや運用に関して、実践的な知見が不足していたため、トラブルシューティングや最適化に時間を要することがありました。

これらの課題はありましたが、チーム全体で協力し、積極的に学びながらプロジェクトを推進することで、最終的には目標とするプロダクトを完成させることができました。

尾崎里紗

@5dbb1f9f4226e3f1