本日の積み上げ
①個人アプリの構想
②DB設計
①個人アプリの構想
■ 個人アプリ名:スタサポ <= 突っ込まれるかも
■ どんなアプリか
ユーザーがメンターさんにわからないところをすぐに聞けるマッチングアプリ
▶ 手立て
質問したいときに質問フォーマットにそってユーザーがメンターさんにビデオ通話を申し込む。
グループチャットを通じて勉強し合う。
ユーザーやメンター評価を搭載している。
自分の学びをアウトプットがすることができる。
▶ 経緯
昨今はコロナウィルスの影響でオンライン学習が増えている。が動画だけの学習だと受け身になりがちで質問
したいところが聞けない。
1対1のビデオチャットなら好きな質問ができると考えた。
某スクールの学びを通して、わからないところだけ聞く自分がわかっていることを
遠慮なく聞けるサービスに感動から。
▶ ユーザー側のメリット
周りに気にしないで、わからないところだけ聞きたい。
動画では整理されていて分かりやすいが、その場の疑問が解決しずらい。
自分がどこまで分かっているのアウトプットしながら確認ができる。
自宅で簡単に取り組むことができる。
コメントや評価を通じて自分の理解度を可視化でき、承認欲求が満たされる。
▶メンター視点でのメリット
隙間時間に行うことができる。
教えることに携わりたい人が気軽な気持ちでできる。(その場にいればよい)
その人だけに教えることができる。
誰かに知識を伝える・教えること一番のアウトプット。
▶実装したいこと
ビデオ通話での応答
コメント機能
ログイン機能(メンター・生徒)
評価機能(メンター・生徒)
応答可能かどうか
質問フォーム
非同期通信(ビデオ通話、メッセージ)
今日の積み上げページ(アウトプット)
■開発環境
rails 5.0.7.2
ruby 2.5.1
gem device
② DB設計
usersテーブル
Column Type Options
name string null: false, unique: true
email string null: false, unique: true
password string null: false
my-image string
introduction text
profile text
subject string
rate float
Association
has_many :groups_users
has_many :groups, through: :user_groups
has_many :messages
has_many :tweets
has_many :teaches
groupsテーブル
Column Type Options
name string null: false, unique: true
Association
has_many :user_groups
has_many :users, through: :user_groups
has_many :messages
user_groupsテーブル
Column Type Options
group_id integer null: false, foreign_key: true
user_id integer null: false, foreign_key: true
Association
belongs_to :group
belongs_to :user
groupmessagesテーブル
Column Type Options
comment text null: false
image string
group_id integer null: false, foreign_key: true
user_id integer null: false, foreign_key: true
Association
belongs_to :group
belongs_to :user
Tweetsテーブル
Column Type Options
title string null: false
body text null: false
image string
user_id integer null: false, foreign_key: true
Association
belongs_to :user
tweetmessagesテーブル
Column Type Options
comment text null: false
image string
tweet_id integer null: false, foreign_key: true
user_id integer null: false, foreign_key: true
Association
belongs_to :tweet
belongs_to :user
teachテーブル
Column Type Options
title string
image string
body text
user_id integer null: false, foreign_key: true
Association
has_many :teach_tags
has_many :tags, through: :teach_tags
teach_tagsテーブル
Column Type Options
title string
image string
teach_id integer null: false, foreign_key: true
tag_id integer null: false, foreign_key: true
Association
belongs_to : teach
belongs_to :tag
tegsテーブル
Column Type Options
text string
Association
has_many :teach_tags
has_many :teaches, through: :teach_tags