Open4
Laravel10 + Vue3でCRMをつくってみる!
これは何?
自分が自己満足のために、Laravel10, Vue3を使って顧客管理システムを0からつくってみるってやつ
目的
- 実務で開発ぜんぜんしてないから開発がしたい!!
- Laravelをいまだにつかったことがないから使いたい。
- Vueも使ったことないから使いたい。
- テストコード書いてテスト自動化したことないからやりたい。。。
- 0から環境構築したことないからやってみたい。
- とにかくなんか作りたいからつくる。(一番でかい)
Must
- 顧客管理システムとして最低限の機能を備えたMVPをつくる(MVPとする機能は後程)
- Dockerで環境構築
Want
- Laravelでユニットテスト
- Vitestでコンポーネントテスト
- メール送信機能の実装
- カレンダー機能の実装
Hope
- メールマーケティング機能の実装
- レポート機能の実装(Jiraのレポート機能みたいなやつ)
- 本番環境の構築
- 本番環境へのCD
- 本番環境のセキュリティ対策
機能一覧
Must-Have Features (MVP)
- 顧客情報
- 登録 / 編集 / 削除機能
- 詳細表示機能
- 一覧表示 / 検索機能
- CSVエクスポート機能
- タグ付け機能
- メモ機能
Nice-to-Have Features
- 販売商品
- 登録 / 編集 / 削除機能
- 一覧表示
- 販売実績
- 登録 / 編集 / 削除機能
- 一覧表示 / 検索機能
- 問い合わせ
- 登録 / 編集 /削除機能
- 一覧表示 / 検索機能
- カテゴリー分け機能
- 販売商品紐づけ機能
Good-to-Have Features
- メールマーケティング機能
- カレンダー / タスク・リマインダー機能
認証・認可
- 会員登録 / ログイン / ログアウト
- メールアドレス変更
- パスワードリセット
- パスワード期限切れ通知
- ロールベースのアクセス制御
- 一般 / 管理者 /
- プロフィール初期設定
- プロフィール参照 / 編集
環境
使用技術
Frontend
- TypeScript
- Node.js
- Vue.js
- Sass
- Vite.js
- Vitest
- Prettier
- ESLint
Backend
- PHP
- Laravel
- PHPUnit
Middleware
- DB
- MySQL
- Web サーバー
- Nginx