48
35

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【個人開発】プログラミング初学者がアイデア探しアプリを作りました

Last updated at Posted at 2022-09-06

はじめに

スクリーンショット 2022-08-26 3.24.31のコピー.png
こんにちは @yunoM と申します
プログラミング学習を始めて4ヶ月が経ち、
先月初めて個人開発したアプリ「myru」が完成したので記録します✏️
このアプリの概要や思いについて書きましたのでよければ最後までお付き合いください!

【Twitter】
https://twitter.com/odoruyunoM
【今回作ったアプリ】
https://polar-escarpment-12121.herokuapp.com/
【GitHub】
https://github.com/fynmrtsk1225/myru_app

アプリを作ったきっかけ

家にいる時間が長くなったことで「おうち時間」に注目が集まった近年
何をして過ごすか以外にも「どんな部屋で過ごすか」についてもこだわりを持つ人が増えました
しかし、インテリアに興味やこだわりがありながらも実現できている人は少ないそうです
私自身、憧れや理想がありながらも完璧に実現はできていないのが現実です
そこで、気軽に部屋作りを楽しんでもらうことはできないか?と考え【myru】を作りました

アプリに込めた思い・実現したいこと

「1人1人に豊かな暮らしを」
理想のインテリアテイスト探し〜商品購入までの流れをアプリ内で完結させることで
部屋作りにかかる時間を削減し、ユーザのストレスを軽減させる

サービス概要

1. Topページ

できる限りシンプルなデザインを意識して作成しました
スクリーンショット 2022-09-06 16.03.59.png

2. アイデア作成・編集・確認

ルームアイデア作成画面では、現在の部屋情報と設置予定場所の詳細をメモ
また、アイデア探しや商品探しの際もワンクリックで確認できるサイドバーを用意しました
ezgif.com-gif-maker (1).gif

3. メイン投稿・商品投稿

完成した部屋の情報を他ユーザに向けて発信
メイン投稿と一緒に使用したインテリア情報を載せることもできます
この機能を使うことで理想のインテリア探しから購入までの流れをスムーズにしています
インテリアを扱う企業様にも購入までの導線づくりとして利用していただけると考えました
ezgif.com-gif-maker.gif

4. プロフィール編集・ユーザページ

他ユーザのアイデア探しの参考になるようプロフィールを編集することができます
公開したくない内容は空欄のままでもOKです
ezgif.com-gif-maker (2).gif

使用環境

  • ruby 3.0.1
  • Rails 6.0.5
  • PostgreSQL 14.2

主なGem

  • rails_admin
  • cancancan
  • cocoon
  • ransack
  • Ajax

ER図

スクリーンショット 2022-09-06 17.54.46.png
usersテーブル
ユーザの情報を保存

profilesテーブル
ユーザに紐づくプロフィール情報を保存
ユーザ(users)1人につき1つのプロフィールを持つため「1対1」のアソシエーション

room_ideasテーブル
ユーザの部屋情報と設置予定場所の詳細を保存
ユーザ(users)1人につき複数のルームアイデアを持つため「1対多」のアソシエーション

relationshipsテーブル
ユーザ同士のフォローを実現するための中間テーブル(自己結合)
主ユーザ(users)と他ユーザ(users)が互いにフォローし合うため「多対多」のアソシエーション

picturesテーブル
メイン投稿の情報を保存
ユーザ(users)が複数のメイン投稿を持つため「1対多」のアソシエーション

productsテーブル
メイン投稿に紐づく商品情報を保存
1つのメイン投稿(pictures)が複数の商品情報を持つため「1対多」のアソシエーション

tagsテーブル
メイン投稿(pictures)に紐づくタグの情報を保存
①1つのメイン投稿が複数のタグを持つ
②複数のメイン投稿が1つのタグを持つため「多対多」のアソシエーション

picture_tagsテーブル
メイン投稿(pictures)とタグ(tags)の中間テーブル

favorite_productsテーブル
ユーザ(users)と商品情報(products)の中間テーブル
①1人のユーザが複数の商品情報をお気に入り
②複数のユーザが1つの商品情報をお気に入りするため「多対多」のアソシエーション

favorite_picturesテーブル
ユーザ(users)とメイン投稿(pictures)の中間テーブル
①1人のユーザが複数のメイン投稿をお気に入り
②複数のユーザが1つのメイン投稿をお気に入りするため「多対多」のアソシエーション

こだわりポイント

1. 自分のルームアイデアをいつでも確認できるタブ機能

ezgif.com-gif-maker (3).gif

2. 追加・削除ができる投稿フォーム

タグ付けフォームが1つ以下にならないよう制御
ezgif.com-gif-maker (4).gif

3. タグを管理者のみが作ることができる

不特定多数のタグがあるとメイン投稿検索時に迷いが生じるため
ezgif.com-gif-maker (5).gif

今後実装したいこと

1. トップページの改良

現状、画像を投稿するアプリだと伝わりにくい
どのような方法で課題解決ができるのか具体的なイメージを持たせられるようにする

2.自身の部屋の間取り図化

部屋作りに最も重要な「間取り」をユーザ自身にカスタマイズしてもらうことで
より具体的な理想の部屋をイメージしてもらうため

3.プロフィールでの「よく使うタグ」の登録

よく使うタグから自身のインテリアテイストとマッチするユーザをフォローできる

4.インスタグラムとの連携

現状、インテリア選びの際に最も参考にされているアプリがインスタグラム
情報を細分化するためにインスタグラムユーザにも使いやすくなるのでは?

5.タグリクエスト機能

管理者のみがタグを作れるため一般ユーザからの声をアプリに反映させる機能

6.管理者からユーザへの注意喚起機能

意図しないアカウント削除を防ぐため
アカウント削除に該当する投稿などがあったユーザに対し注意喚起のメールを送信できる

終わりに

ここまで記事を読んでいただき、ありがとうございます!
今回は、使っていて楽しくなるアプリをイメージしながら制作しました
完成後は、機能面はもちろんサービスとしての価値についても再構築が必要だなと感じています

初めての個人開発は、コンセプト決めからデプロイまで様々な壁にぶつかり続けた1ヶ月間でした
サポートいただいた皆さん、本当にありがとうございました!
まだまだアプリ内・コードともに改良すべき点が多くありますので、これからも学習を進めていきます

【Twitter】
https://twitter.com/odoruyunoM
【今回作ったアプリ】
https://polar-escarpment-12121.herokuapp.com/
【GitHub】
https://github.com/fynmrtsk1225/myru_app

参考記事

48
35
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
48
35

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?