HeartLink

概要
このアプリは、心拍数を用いた相性診断Webアプリケーションです。
まずWebアプリとウェアラブルアプリの二つがありそれらを連携して利用します。
そして2人プレイを想定したアプリになっています。
アプリの流れとしては心拍数を取得しながらアプリ側から提供される一歩踏み込んだお題について話し合います。プレイヤー二人の心拍数をとりながら計4回出題されるお題について話し合うことで、心拍数の上がり下がりを取得しそれら二つのグラフの心拍数の上昇下降タイミングをシンクロ率という値で出力し相性度として提供するものになっています。
最後に提供される内容として、シンクロ率,最大心拍、プレイヤー各々の最大心拍とその時のお題、またお題ごとの心拍数のグラフなどを閲覧することが可能になっています。
技術構成
フロントエンド:React
バックエンド:FastAPI
ウェアラブルアプリ:Kotlin
担当部分
ウェアラブルアプリの実装とReactでアニメーションコンポーネントの実装を行いました。
まずウェアラブルアプリは、心拍数を取得し心拍数が変動するとサーバーに送信する機能。そしてWeb側のアプリが終了すると同時にKotlin側のアプリも終了する流れになっています。
Reactを用いたアニメーションコンポーネントは、2つ実装しました。
まず1つ目が心拍数の変化に合わせて脈拍するハートのアニメーションコンポーネント
そして2つ目がユーザーの接続に合わせてハートに水が溜まっていくようなアニメーションコンポーネントの実装を行いました。
感想
良い失敗経験を積むことのできた開発になったと思います。
まず初めに案の詰めが甘かったこと。案のつめが甘かったことにより仕様変更が相次ぎ結果的にタスクの量が増えたり実装した機能を結局使わないなどの問題が発生してしまいました。
次の失敗は、開発メンバーが4人いたのですが、開発メンバーがサークル等で普段から一緒にいる機会が多く、 1人対1人の進捗報告やタスク状況の共有などを行なっていたことにより、チーム全体としての情報共有の場を設けることがなく、各々が把握している情報に差が生まれてしまっていたことが大きな失敗だと感じています。
今までの開発が基本的には短期間での開発が多かったので、長期間の開発になったときにこのような失敗を経験することができ、今後の開発で同じ失敗をしないようにすると身に染みて感じることになった開発でした。
関連リンク
デプロイ:https://heart-link-qx61.vercel.app/
GitHub(Web):https://github.com/hiroto09/HeartLink
GitHub(ウェアラブル):https://github.com/hiroto09/HeartLink-Wearable