29
29

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-03-01

サービスの概要

【サイト名】
Fodeli Online

スクリーンショット 0004-02-24 4.27.14.png

【コンセプト】
フードデリバリー配達員の情報交換や交流を目的としたサービス

【サービスの開発に至るまでの背景】
私自身、2社フードデリバリーで働いていた経験があり、出来高制ということもあり、注文が来なくて稼げない時期がありました。
一般的な会社だったら上司に仕事のコツを教えて貰えたりすると思いますが、完全個人のこの仕事では基本的には自分でコツを見つけていくしかありません。
そんな中で、配達員同士がもっと気軽に情報交換ができるサービスがあったらいいなと考え、このサービスを開発することにしました。

アプリケーションの機能

ユーザー登録機能
 ■ ログイン機能
 ■ ログイン情報の保持
 ■ ユーザー情報編集機能
 ■ プロフィール画像変更機能(carrierwave)
 ■ 検索機能
ツイートの投稿機能
 ■ 投稿一覧表示機能
 ■ 投稿詳細表示機能
 ■ 画像投稿機能(carrierwave)
 ■ コメントの投稿と削除機能
 ■ いいね機能(Ajax)
 ■ 検索機能
ページネーション機能(Kaminari)
オープンチャット機能
 ■ コメントの投稿と削除機能(Ajax)
 ■ 地域別絞り込み機能
個人チャット機能
 ■ コメントの投稿と削除機能(Ajax)
DB テーブルのリレーション管理
DB トランザクション制御機能
通知機能(フォロワーがツイートした時など)
フォロー機能(Ajax)
単体テスト機能(Rspec)
統合テスト機能(Rspec)

技術的ポイント

RSpecで Model, Request, System テスト記述(計 258examples)
Ajaxを用いた非同期処理(フォロー/未フォロー、ツイートに対するいいね機能などの切り替え表示)
Bootstrapによるレスポンシブ対応
Rubocopを使用したコード規約に沿った開発
15 個のモデルをそれぞれ関連付けて使用

設計

画面設計(モックアップ)

モックアップ.png

DB設計(ER図)

db.png

AWS(インフラ)構成図

aws.png

使用技術

Ruby 2.5.7
Ruby on Rails 5.2.3
PostgreSQL 11.14
Nginx
Puma
Docker/Docker-compose
Rspec
Bootstrap
Rubocop
AWS
 ■ VPC
 ■ EC2
 ■ RDS
 ■ Route53
 ■ ALB
 ■ SES

開発の流れ

一人擬似チーム開発の練習

チーム開発の練習として
【issue作成 → branch作成 → プルリク → マージ】
この流れで開発を進めました。(合計32issue)

スクリーンショット 0004-02-23 23.17.48.png

push前にテストとリンターでコードのチェック

Rspecで書いたテストがパスしたら、Rubocopでコードのチェックをし、修正が必要ならコードの修正。
その後、再度テストがパスしたらpushを実行しています。

開発環境から本番環境へデプロイまでの流れ

【開発環境】
dockerコンテナ起動→コーディング→githubにpush

【本番環境】
EC2にSSHでログイン→githubからpull→dockerコンテナ起動

アプリケーションのデモ動画

ユーザー関連

動画内容
■ユーザー新規登録登録
■ログイン&ログアウト
■プロフィール画面の紹介
■プロフィール編集機能
■パスワード再設定
■ユーザーをフォロー

ツイート関連

動画内容
■ツイートの投稿と削除
■画像投稿
■コメント機能
■いいね機能
■検索機能

チャット関連

動画内容
■個人チャット機能の紹介
■オープンチャット機能の紹介

参考にした教材

Rails

Ruby

HTML&CSS

ITの基礎

Linux

git

docker

AWS

29
29
4

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
29
29

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?