はじめに
実務未経験者がRailsを使用し、Webアプリケーションを作成してみたのでアプリの紹介や開発時の苦労した点などをご紹介できればと思います。
アプリ概要
本専用のタスク管理アプリ 「ブックたす」を作成しました
作成背景
最近読書をするようになってきたんですがこれまでほぼ読書をしてこなかった人間なので毎日継続して読むことが難しく感じていました
また、読むだけで終わっていたので本の内容が抜けていることがあり、本の内容を簡単にアウトプットできたらいいなと思いました!
自分と同じような悩みを持っている人が他にもいるのではないかなと感じ、アプリを制作しようと考えました。
機能一覧
機能 | Gem | |
---|---|---|
① | ログイン機能 | devise |
② | 本の登録(CRUD) | × |
③ | おすすめ機能(CRUD) | × |
④ | アウトプット機能 | × |
⑤ | いいね機能(Ajax) | × |
⑥ | コメント機能(Ajax) | × |
⑦ | フォロー機能 | × |
⑧ | プロフィールページ機能 | × |
⑨ | ゲストユーザーログイン機能 | × |
⑩ | ページネーション機能 | kaminari |
⑪ | 検索機能 | ransack |
⑫ | 画像投稿機能 | × |
使用イメージ
本の登録
おすすめ機能
アウトプット機能
使用技術
フロントエンド
HTML/CSS(Sass)
Bootstrap 4.5.3
jQuery 3.5.1
バックエンド
Ruby 2.6.5
Ruby on Rails 6.0.3.4
インフラ
AWS(VPC、EC2、RDS、Route53、S3、ALB、ACM、IAM)
Nginx、puma
Capistrano3
PostgreSQL 11.5
ER図
インフラ構成図
苦労した点
非同期処理
コメントやいいねの部分を非同期で実装したのですがうまく値が渡ってこず苦労しました。
ドキュメントや技術ブログなどをみて進めていきました。
AWSへのデプロイ
AWSへの基礎理解やデプロイ時に何度もエラーが出て苦しみましたがエラーログを見たり、調べたりして進めていきました。
またわからない用語がたくさんあり、何がわからないのかがわからない状況になってしまっていたのですが1つずつ調べながら全体を理解していきました。
今後やりたいこと
- レスポンシブ対応
- Vue.jsの導入
- DockerやCircleCIの導入
- 無限スクロール実装
- 外部APIとの連携
- おすすめランキング機能の実装
感想
アプリ開発するのは楽しいなと改めて感じました。
もちろんエラーにはまり苦しいと感じる時もありますが、それを乗り越えた時は思わず声に出してしまいそうなぐらいの喜びを感じています!
また日々自分のできることが増えていくことにやりがいを感じます!
まだまだ改善点がたくさんあるのでどんどんアップデートしていきたいと思います!
ここまで読んでいただきありがとうございました!
良かったと思った方はLGTM
していただけると嬉しいです