はじめに
2023年1月から4ヶ月ディープロ(旧dive into code)で学習していた@rrkrgftです。
卒業制作として作成したアプリのOKIRAKUについてのご紹介です。
【アプリのリンク】
https://okiraku.website/top
【GitHubのリンク】
https://github.com/rrkrgft/okiraku
アプリOKIRAKUとは
アプリOKIRAKUは、自分の「喜び、楽しみ」を見つけるお手伝いをするアプリです。
アプリ開発の経緯
自分の人生で悩んでいた時に、「どういう人生を送りたいか。」、その答えを探していた中で「喜びの多い人生、楽しい人生」を送りたいと言う答えは見つかりました。ただ、自分にとっての喜び、楽しい人生とは何なのかがすぐにはわかりませんでした。
そのため、自分の喜び、楽しいものは何なのかを見つけるために、自分は楽しいことなどがあった時にノートに書き溜めたり、面白そうなことを積極的に経験するようにしました。そうすることで、少し自分の喜び、楽しいことが何かを見つけることができました。
ただ、自分は一人でノートに書いたりするだけしかできなかったのですが、アプリであれば、もっと色々なことができると思い開発しました。
OKIRAKUの特徴
アプリOKIRAKUは喜び、楽しみを見つけるために、以下の機能をつけました。
- 楽しいこと、嬉しいことの投稿ができる機能
- 他の人の投稿で、自分が興味を持った投稿に対してのお気に入り機能
- 楽しいこと、嬉しいことの投稿や他の人の投稿を利用した分析機能
楽しいこと、嬉しいことの投稿ができる機能
画像のように楽しいこと、嬉しいことの投稿ができます。
投稿できるところでは以下の特徴があります。
-
詳細(非公開)
あまり他の人には見られたくない内容についても書けるようにして、自分の本当の気持ちを書けるようにしました。 -
深掘り
詳細に書いた内容に対して、どこに幸せを感じたのかを振り返れるようにしました。(どこに幸せを感じるかは人によって違うので、そこを深掘りできるようにしました)例えば、パフェを友達に行った場合に、「美味しいパフェを食べられて、それを作ってくれた人に感謝の気持ちができた」や、「美味しいものを仲の良い人と食べに行けて嬉しかった」など人により何に楽しいと思うかが違うので、そこを深掘りできるようにしました。 -
深掘りの非公開
深掘りについても人に見られたくないと思う内容も安心して書けるように非公開ボタンをつけています。 -
嬉しい度
嬉しいと感じた度合いについても振り返ることができるようにしています。 -
ラベル
ラベルで内容の概要がつけられます。(ラベルについては、初期に自動で登録されるのと、個人に合わせて追加が可能)
他の人の投稿で、自分が興味を持った投稿に対してのお気に入り機能
他の人の投稿で楽しそうだと思ったものをお気に入り登録ができます。
楽しいこと、嬉しいことの投稿や他の人の投稿を利用した分析機能
自分の投稿のページから分析機能を使用可能です。ChatGPTを使用した分析かChatGPTを使用しない分析機能を選べます。(ChatGPTによる分析をする場合は画面遷移に時間を要するため分けています)
分析ボタンを押すと下記のような形で分析結果を出してくれる。
- 自分の投稿、お気に入りした投稿のラベル個数を表に出してくれる。
→ 自分の投稿のラベルの傾向とお気に入りの投稿のラベルの傾向を見れることでどのようなことを自分が好きかの傾向を見ることができます。 - 自分の投稿のラベルを嬉しい度によって重み付をして円グラフで出してくれる。
→ 自分の投稿のラベルと嬉しい度の重み付により、より嬉しいと思ったラベルの割合が大きくなり、個数と合わせて傾向が見ることができます。 - 自分の投稿から文字を抜き出し多く出てきた言葉を視覚的に見える。
→ 投稿の際に多く出てきた単語を見ることで、どのようなことを楽しいと思ったかが視覚的にわかる。 - ChatGPTによるアドバイスをもらえる。
→ ChatGPTによるアドバイスで自分の楽しいと思うことのアドバイスをもらえる。
使用したGEMなど
devise ログイン機能
cancancan 管理者権限
ransack 検索、並び替え
LazyHighCharts グラフなど(JavaScriptで読み込み)
MeCab 形態素解析(文字の抽出)(インストール)
Natto MeCabを簡単にRubyで使う
ruby-openai ChatGPTを使用するため
AWSの実装 (EC2、S3、Route53、SESを使用)
さいごに
最後までご覧いただきありがとうございます。
これからも技術を伸ばしていき、役に立つアプリを作成できればと思っております。