見出し画像

【第1回】Laravel10×Reactでウェブサイトを作ってみる

最近、子育てのことしか書いてなかったので、エンジニアっぽいこともやりたいなーと思ったので、ウェブサイトを作ってみようかと思います。
Laravelは最新の10を使って、使い勝手とかもみていこうかなというのと、Reactは勉強がてら使ってみようと思います。

ウェブサイトの概要

どういうサイトを作るか

どんなシステムを作るかというと、自分の趣味でもあるテキサスホールデムポーカーの予約システムを作ろうかなと思います!
よく行くお店には予約システムがなくて、いちいちLINEのオープンチャットで状況を聞いているのがストレスを感じているので、作ってから売れたらなーって思ってたりもしてます笑

ざっくり要件

ざっくりですが、作っていく機能を書いていきます。

  1. ユーザーアカウント機能

    1. ユーザーはアカウントを作成し、ログインすることができる。

    2. アカウント情報には、ユーザー名、パスワード、メールアドレスが含まれる。

  2. チップ保有機能

    1. ユーザーは、保有チップ数を持っている。

    2. チップ数は、ユーザーごとに異なる。

    3. チップ数の増減ができるようにする。

  3. 予約機能

    1. ユーザーは、ポーカールームの予約をすることができる。

    2. 予約する際に、チップを使用することができる。

    3. 予約を取り消すことができる。

    4. 予約状況を確認できる。

  4. ウェイティング機能

    1. テーブルが満席の場合、待ちリストに登録される。

    2. 待ちリストの先頭にいる人が席を空けた場合、自動的にテーブルに招待される。

    3. 待ちリストからいつでも退出できるようにする。

    4. 待ちリストに登録された人に、現在の順位や予想待ち時間を通知する機能を用意する。

    5. 現在の待ちリストを表示するページを用意する。

  5. ポーカールーム情報

    1. ポーカールームは、予約可能な日時を設定することができる。

  6. ポーカーテーブル情報

    1. ポーカーテーブルごとに、最大収容人数を設定することができる。

    2. ポーカーテーブルの増減ができるようにする

  7. 支払い ※今後の拡張機能でメモだけ

    1. チップは、クレジットカードや銀行振込等で購入できるようにする。

    2. ユーザーは、保有チップ数に応じてランクアップする。

  8. 管理画面

    1. ユーザー管理

    2. チップ管理

    3. 予約管理

    4. ポーカールーム管理

    5. ポーカーテーブル管理

こんな感じでしょうか・・・。
案外いっぱいある笑
途中で挫折したらすみません。。。

システム環境

  • Docker

  • PHP8

  • Laravel10

  • React18

  • Mysql8

  • その他必要になったものはライブラリで適宜入れていきます

今後の流れ

今後の流れをざっくりと書いていきます。

  1. Dockerでローカル環境を作る

  2. migrationでテーブル作成

  3. Modelなど細かいものを作る

  4. Routingを作成

  5. Controllerを作成し、APIを作成

  6. Viewの作成

最後に

どのぐらいでできるかわからないですが、5月中を目処に作ってnoteにできたらなと思います。
次回はDockerでローカル環境を作成していくところから始めます。
長い連載になるかと思いますので、気長に見てもらえますと・・・
がんばります\(^o^)/

この記事が気に入ったらサポートをしてみませんか?