AIを利用してLaravelプロジェクトを素早く作る

Laravel Laravel

最近ChatGPTなどのAIを利用して、開発をしてもらうなど、そんな噂話がちらほら聞こえてきます。
ですが、実際どうやったら良いのか分からないという方のために、プロンプトも交えて紹介します。

機能の洗い出し

例として、個人のタスクを管理するサービスを作ろうと思います。

とりあえずLaravelでAPIの作成をして、後でBladeかReactなどでViewを作成しようかと思います。
そして、タスクなので開始日と終了日、重要度もあればいいな。みたいな感じで細かい機能はよく分からないので、AIに聞いてみます。
ついでに競合も調べて、便利そうな機能があれば取り込もうかとも思います。

#命令書: あなたは、[Webサービスの企画担当]です。
以下の[テーマ]に関する内容を[制約条件]をもとに、[結果]を出力してください。

#テーマ
個人のタスク管理サービス

#制約条件
タスクには以下の項目がある
- 開始日
- 終了日
- 重要度

#結果
[1]サービスに必要な{機能}を列挙
[2]このサービスの競合を調査するためのGoogle検索の{キーワード}を列挙
[3]このサービスの競合サービスの情報を列挙(URLがある場合はそれも)
[4]このサービスについて、競合と差別化するための参入障壁や機能の提案

色々返答が返ってきたかと思います。

機能の決定

色々とAIから返答が返ってきたかと思います。
その中から、今回作成したい機能を選択して、何か思いついた場合は追加したりして機能一覧をまとめます。
今回は、以下の機能を作ろうかと思います。

  • タスク作成・編集・削除
  • 開始日・終了日の設定
  • 重要度の設定(例:高・中・低)
  • タスクリスト表示(日付順、重要度順)
  • カレンダー表示

ER図作成

上記機能を元にER図を作成してもらいます。
今回は小さいシステムですが、大きくなった場合、意図しないような結果が返ることもあるので、大項目毎に設計してもらったりすると良いかもしれません。

#命令書
あなたは、[Webサービスのエンジニア]です。 以下の[テーマ]に関する内容を[制約条件]をもとに、[結果]を出力してください。

# テーマ
個人のタスク管理サービスの以下機能のデータベース設計
- タスク作成・編集・削除
- 開始日・終了日の設定
- 重要度の設定(例:高・中・低)
- タスクリスト表示(日付順、重要度順)
- カレンダー表示

# 制約条件
- Mermaid形式で出力
- Primary keyはidとする
- カラム名はsnake_caseとする
- テーブル名は複数形の単語とする
- pivotテーブルは両方のテーブル名を繋げたものとする

# 結果
1.ER図を作成

上記をClaudeで作成してもらった結果は以下のようになりました。
ChatGPTでも良いのですが、Mermaid形式がおかしかったりしたのと、ClaudeはArtifacts(アーティファクト)でビジュアル的に結果が確認できる点で採用しました。

erDiagram users ||--o{ tasks : creates tasks ||--o{ task_tags : has tags ||--o{ task_tags : belongs_to users { int id PK string username string email string password_hash datetime created_at datetime updated_at } tasks { int id PK int user_id FK string title text description date start_date date end_date enum priority boolean is_completed datetime created_at datetime updated_at } tags { int id PK string name datetime created_at datetime updated_at } task_tags { int id PK int task_id FK int tag_id FK }

ER図からmigrationファイルへ

ER図ができた所で、これをmigrationファイルを作成するコマンドを作ってもらいます。
ついでにModelやControllerも作成してもらいましょう。

#命令書
あなたは、{PHPエンジニア}です。
以下の制約条件と{入力文}をもとに、 {出力文}を出力してください。

#制約条件
- 利用フレームワーク:Laravel11
- APIを作成

#入力文
<Mermaidコード>

#出力文
- `php artisan make:model`コマンド
- オプションでseed,factory,migration,controller(API)も出力する
- 不足しているテーブルは`php artisan make:migraiton`コマンドを作成
- migrationのコード

コマンドが色々出てきたかと思うので実行して、migrationのコードもコピペして、php artisan migrateを実行してください。

最後に

ここまでで、かなりできたのではないでしょうか?
この後はModelやControllerの中身も基礎的な部分を作ってもらうようにしたら、後は細かいカスタマイズやテストなどでAPIが完成ですね。
何か作りたいものを思いついたら、AIに頼ってモチベーションが切れる前に作りあげてしまうと良いかと思います。

Follow me!

コメント

PAGE TOP
タイトルとURLをコピーしました