Open4

Laravel10 + Vue3でCRMをつくってみる!

moriryo_omoriryo_o

これは何?

自分が自己満足のために、Laravel10, Vue3を使って顧客管理システムを0からつくってみるってやつ

目的

  • 実務で開発ぜんぜんしてないから開発がしたい!!
  • Laravelをいまだにつかったことがないから使いたい。
  • Vueも使ったことないから使いたい。
  • テストコード書いてテスト自動化したことないからやりたい。。。
  • 0から環境構築したことないからやってみたい。
  • とにかくなんか作りたいからつくる。(一番でかい)

Must

  • 顧客管理システムとして最低限の機能を備えたMVPをつくる(MVPとする機能は後程)
  • Dockerで環境構築

Want

  • Laravelでユニットテスト
  • Vitestでコンポーネントテスト
  • メール送信機能の実装
  • カレンダー機能の実装

Hope

  • メールマーケティング機能の実装
  • レポート機能の実装(Jiraのレポート機能みたいなやつ)
  • 本番環境の構築
    • 本番環境へのCD
    • 本番環境のセキュリティ対策
moriryo_omoriryo_o

機能一覧

Must-Have Features (MVP)

  • 顧客情報
    • 登録 / 編集 / 削除機能
    • 詳細表示機能
    • 一覧表示 / 検索機能
    • CSVエクスポート機能
    • タグ付け機能
    • メモ機能

Nice-to-Have Features

  • 販売商品
    • 登録 / 編集 / 削除機能
    • 一覧表示
  • 販売実績
    • 登録 / 編集 / 削除機能
    • 一覧表示 / 検索機能
  • 問い合わせ
    • 登録 / 編集 /削除機能
    • 一覧表示 / 検索機能
    • カテゴリー分け機能
    • 販売商品紐づけ機能

Good-to-Have Features

  • メールマーケティング機能
  • カレンダー / タスク・リマインダー機能

認証・認可

  • 会員登録 / ログイン / ログアウト
  • メールアドレス変更
  • パスワードリセット
  • パスワード期限切れ通知
  • ロールベースのアクセス制御
    • 一般 / 管理者 /
  • プロフィール初期設定
  • プロフィール参照 / 編集
moriryo_omoriryo_o

環境

使用技術

Frontend

  • TypeScript
  • Node.js
  • Vue.js
  • Sass
  • Vite.js
  • Vitest
  • Prettier
  • ESLint

Backend

  • PHP
  • Laravel
  • PHPUnit

Middleware

  • DB
    • MySQL
  • Web サーバー
    • Nginx