This README would normally document whatever steps are necessary to get the application up and running.
Things you may want to cover:
-
Ruby version
-
System dependencies
-
Configuration
-
Database creation
-
Database initialization
-
How to run the test suite
-
Services (job queues, cache servers, search engines, etc.)
-
Deployment instructions
-
...
bookmark_calendar
【アプリ機能】 ※本アプリには大きく分けて3つの機能がございます。
- ファンとアーティストの立場で別々にユーザー登録が出来る機能。
- イベントの内容をカレンダーに反映させる機能。
- お気に入り登録(相互フォロー)をする事でスケジュールの確認が出来る機能。
【制作目的】
気になっているユーザー(ファン同士)、もしくは応援しているアーティストをフォローする事でスケジュール一覧からイベントの内容を確認・共有が出来るようにしました。
【どんな時に使うの??】
- 自分の好きなアーティストのライブスケジュールを確認したい時
- 友達同士でお互いのスケジュールを確認したい時
- 相互フォローからお互いのプロフィールやフォロワーを確認したい時
たくさんの方々にぜひ使って欲しいと思っております。 本アプリの作成に至るまでの詳しい経緯については最後の方にまとめております。 ご興味がありましたらぜひ一度ご覧下さい。よろしくお願い致します。
【AWS】http://3.113.90.130/
【heroku】https://devise-bookmark-calendar.herokuapp.com/
【ID】shirarin 【PASS】1999
【アカウント名】テスト
【e-mail】test@gmail.com
【password】ab0000
- 言語:Html/Css/Ruby/javascript/
- フレームワーク:Ruby on Rails
- DB:mysql
- デプロイ先:heroku/AWS
1.トップページからファン(ユーザー)会員、アーティスト会員のどちらかで新規登録が出来る仕様になっています。【アプリ内でユーザーはファン会員という仕様になっておりますのでご注意下さい!!】
2.イベント作成ボタンからイベントの作成(追加)が可能になっており、カレンダーにイベントが反映される仕様になっています。
3.作成されたイベント内容は詳細の閲覧・編集・削除がそれぞれ出来る仕様になっています。
4.作成されたイベント内容は他のファン(ユーザー)、アーティストからは編集・削除が出来ない仕様になっています。
5.ファン(ユーザー)、アーティストのリストからそれぞれプロフィールやカレンダーの内容が閲覧出来る仕様になっています。
6.ファン(ユーザー)、アーティストからそれぞれフォローとフォロー解除が出来る仕様になっています。
7.フォロー・フォロワー画面からそれぞれのファン(ユーザー)、アーティストの一覧(リスト)が見られる仕様なっています。
- ユーザー登録をファン会員とアーティスト会員で分けた点
- イベント内容をカレンダーでも確認できる点
- フォロー、フォロワー機能を加えた点
- 日本語化機能
- テストアカウント機能
- プロフィールの編集機能
- 必要に応じてイベントを色分け、非表示にする機能
- フォローした人のイベントをタイムラインで一覧表示する機能
今回のアプリ作成に至る経緯についてですが、私をはじめ周りの友人や先輩方にライブ鑑賞を趣味としている方が非常に多かった事もあり、自身のイベント予定やライブスケジュールの内容をカレンダーに反映させ、共有する事が出来ればすごく便利になるのではないかと考えて今回のアプリ作成に臨みました。また、同時にアーティスト活動をされている方の応援も出来るような形にしたかった為、アーティストの枠も付け加えて実装を行いました。お気に入り登録(相互フォロー)を可能にする事で、自身のお気に入り一覧から気になった人の活動履歴やライブのスケジュールを確認したり、共有したりする事が実際に出来れば、周りの方々の課題解決やアーティストの応援材料として役立つアプリになると思い、自分なりに創意工夫をして実装に取り組みました。自身が作ってみたいオリジナリティーを追求した形のアプリだったので、数多くのトライ&エラーを繰り返しましたが、無事に完成させる事が出来ました。今後は、自身の友人、先輩、また応援しているアーティストさんの方々に本アプリを実際に使用して頂き、ご意見、ご感想を頂戴しながらアプリのアップデート(追加実装)に真摯に取り組んで参りたいと考えております。その上で得た経験値をお仕事でもぜひ役立てていきたいと考えております。最後まで私の想いも読んで下さり、誠に有難うございます。
Column | Type | Options |
---|---|---|
nickname | string | null: false |
sex | integer | null: false |
birthday | date | null: false |
hobby | string | |
string | null: false | |
password | string | null: false |
- has_many :has_many :active_user_bookmarks, class_name: 'Bookmark', foreign_key: 'follower_id', dependent: :destroy
- has_many :has_many :passive_user_bookmarks, class_name: 'Bookmark', foreign_key: 'following_id', dependent: :destroy
- has_many :front_user_bookmarks, class_name: 'Bookmark', foreign_key: 'follower_id', dependent: :destroy
- has_many :back_artist_bookmarks, class_name: 'Bookmark', foreign_key: 'following_id', dependent: :destroy
- has_many :followers, through: :passive_user_bookmarks, source: :follower
- has_many :followings, through: :active_user_bookmarks, source: :following
- has_many :artist_followers, through: :back_artist_bookmarks, source: :followed
- has_many :artist_followings, through: :front_user_bookmarks, source: :follow
- has_many :events, dependent: :destroy
Column | Type | Options |
---|---|---|
artistname | string | null: false |
sex | integer | null: false |
birthday | date | null: false |
hobby | string | |
discography | text | |
string | ||
string | ||
string | ||
string | null: false | |
password | string | null: false |
- has_many :active_artist_bookmarks, class_name: 'Bookmark', foreign_key: 'followed_id', dependent: :destroy
- has_many :passive_artist_bookmarks, class_name: 'Bookmark', foreign_key: 'follow_id', dependent: :destroy
- has_many :front_artist_bookmarks, class_name: 'Bookmark', foreign_key: 'followed_id', dependent: :destroy
- has_many :back_user_bookmarks, class_name: 'Bookmark', foreign_key: 'follow_id', dependent: :destroy
- has_many :followed_ids, through: :passive_artist_bookmarks, source: :followed
- has_many :follow_ids, through: :active_artist_bookmarks, source: :follow
- has_many :user_followed_ids, through: :back_user_bookmarks, source: :follower
- has_many :user_follow_ids, through: :front_artist_bookmarks, source: :following
- has_many :events, dependent: :destroy
Column | Type | Options |
---|---|---|
title | string | null: false |
content | text | null: false |
start_time | datetime | null: false |
user_id | integer | null: false, foreign_key: true |
artist_id | integer | null: false, foreign_key: true |
- belongs_to :belongs_to :user, optional: true
- belongs_to :belongs_to :artist, optional: true
Column | Type | Options |
---|---|---|
following_id | integer | |
follower_id | integer | |
follow_id | integer | |
followed_id | integer |
- belongs_to :following, class_name: 'User', optional: true
- belongs_to :follower, class_name: 'User', optional: true
- belongs_to :follow, class_name: 'Artist', optional: true
- belongs_to :followed, class_name: 'Artist', optional: true