﻿# 第1回 選べる指示書3本

第1回で「1本目に何を作るか」が決まらなかった人向けの、追加候補3本です。
どれも手順書2の記入例と同じ形（【1】〜【7】＋技術的な前提＋進め方＋禁止）で、そのまま埋め終わっている状態にしてあります。
1本選んでClaude Codeに貼り、続けて手順書3 ④のブロックを貼れば、公開URLまで行けます。
位置づけとしては、カタログ30のレベル1（案1・2・3・6・7）と並ぶ選択肢です。画面2枚・保存と一覧まで・メールなし、の粒度で揃えています。

---

## 案A アンケートフォーム

消える手作業：セミナーやイベントのたびにGoogleフォームを作り直し、スプレッドシートを開いて満足度を目で数えている。

```
あなたは、Cloudflare Workers と D1 を使ってWebアプリを作る開発者です。
私は非エンジニアです。専門用語を使うときは、一言の言い換えを添えて説明してください。

────────────────────
【1. 作りたいもの】
イベントや講座のあとに配るアンケートを自前のフォームで受け付けて、その回答をデータベースに保存し、
自分だけが見られる管理画面で「誰が・いつ・どう評価して・何を書いたか」を一覧で確認できるアプリ。
Googleフォームとスプレッドシートで手作業していた流れを、1つのアプリにまとめる。

【2. 使う人】
- 回答する人（外部の人）：公開されたURLのフォームに、ニックネーム・満足度・感想を入力して送信する。
  ログインはさせない。会員登録もさせない。送信して終わり。
- 管理する人（自分）：1人。管理画面を開いて回答の一覧と、満足度ごとの件数を見る。

【3. 画面】
- 画面1「回答フォーム」：誰でも見られる公開ページ。ニックネームの入力欄、満足度を5段階（1〜5）から1つ選ぶ欄、
  自由記述の感想欄（複数行）、送信ボタンを置く。
  送信したら「回答ありがとうございました」という完了メッセージを同じページに表示する。
- 画面2「管理画面」：自分だけが見られるページ。回答の一覧を新しい順で表示する。
  各行に 回答日時／ニックネーム／満足度／感想 を出す。
  一覧の上に、満足度ごとの件数（5が◯件、4が◯件、…1が◯件）と回答総数を表示する。
※画面はこの2つだけ。

【4. 保存するデータ】
テーブル名：answers
- id：自動採番の連番。主キー
- nickname：文字列・必須。例「しゅう」
- score：数値・必須。1〜5のいずれか
- comment：長めの文字列・任意。感想の自由記述
- created_at：日時・必須。保存された時刻を自動で入れる

【5. メール】
今回はメールなし。（メール送信はこのあとの手順で足すので、あとから足しやすい形にだけしておいてください）

【6. やらないこと】
- 回答する人向けのログイン機能・会員登録は作らない
- メール送信はしない
- 凝ったデザイン・アニメーション・グラフの描画は入れない（件数は数字で出せば十分）
- 3画面目は作らない（アンケートを複数作り分ける機能・回答の編集画面は作らない）
- 検索機能・絞り込み機能・CSV書き出しは作らない

【7. これができたら完成】
公開URLのフォームから回答を送信すると、管理画面の一覧の先頭にその回答が出て、満足度ごとの件数が1件増える。
────────────────────

【技術的な前提（ここは変えなくていい）】
- 実行環境：Cloudflare Workers
- データベース：Cloudflare D1
- ファイル保管が必要なら：Cloudflare R2
- メール：今回は使わない
- フレームワークは指定しません。上の構成でいちばん素直に動く形を選んでください
- デザインは任せます。シンプルで読みやすければ十分です。凝った装飾は不要です

【あなたにお願いしたい進め方】
1. まず、この指示書を読んでわからない点・決まっていない点を質問してください（最大5つ）。いきなり実装を始めないでください。
2. 私が答えたら、作業計画を箇条書きで出してください。どのファイルを作り、どういう順番で動く状態にしていくかを、非エンジニアにわかる言葉で書いてください。
3. 私が「進めて」と言ったら実装してください。
4. 作業に必要なコマンド（インストール、設定、デプロイなど）は、私に打たせずにあなたが実行してください。実行前に「これから何をするか」を1行で教えてください。
5. 秘密の値（APIキーなど）が必要になったら、ファイルに直接書かず、私に「どこにどう設定するか」を聞いてください。

【禁止】
- 【6. やらないこと】に書いたものを作らないでください
- 私が書いていない機能を勝手に足さないでください。必要だと思ったら、実装せずに提案だけしてください
```

---

## 案B イベントの出欠確認

消える手作業：飲み会や勉強会のたびに、LINEグループで出欠のやり取りが流れていき、最後に自分で数え直している。

```
あなたは、Cloudflare Workers と D1 を使ってWebアプリを作る開発者です。
私は非エンジニアです。専門用語を使うときは、一言の言い換えを添えて説明してください。

────────────────────
【1. 作りたいもの】
イベントの出欠を自前のフォームで受け付けて、その回答をデータベースに保存し、
自分だけが見られる管理画面で「誰が・参加なのか不参加なのか未定なのか・何人ずついるか」を一覧で確認できるアプリ。
LINEの往復で集めて手で数えていた流れを、1つのアプリにまとめる。

【2. 使う人】
- 回答する人（外部の人）：公開されたURLのフォームに、名前・出欠・ひとことを入力して送信する。
  ログインはさせない。会員登録もさせない。送信して終わり。
- 管理する人（自分）：1人。管理画面を開いて出欠の一覧と、参加・不参加・未定それぞれの人数を見る。

【3. 画面】
- 画面1「出欠フォーム」：誰でも見られる公開ページ。名前の入力欄、出欠を「参加／不参加／未定」から1つ選ぶ欄、
  ひとこと（任意・1行）の入力欄と送信ボタン。
  送信したら「出欠を受け付けました」という完了メッセージを同じページに表示する。
- 画面2「管理画面」：自分だけが見られるページ。回答の一覧を新しい順で表示する。
  各行に 回答日時／名前／出欠／ひとこと を出す。
  一覧の上に、参加◯人・不参加◯人・未定◯人と、回答総数を表示する。
※画面はこの2つだけ。

【4. 保存するデータ】
テーブル名：rsvps
- id：自動採番の連番。主キー
- name：文字列・必須。例「村上」
- attendance：文字列・必須。取りうる値は 参加／不参加／未定
- note：文字列・任意。ひとこと。例「20時から合流します」
- created_at：日時・必須。保存された時刻を自動で入れる

【5. メール】
今回はメールなし。（メール送信はこのあとの手順で足すので、あとから足しやすい形にだけしておいてください）

【6. やらないこと】
- 回答する人向けのログイン機能・会員登録は作らない
- メール送信・リマインドの通知はしない
- 凝ったデザイン・アニメーションは入れない
- 3画面目は作らない（イベントを複数作り分ける機能・回答者本人が出欠を変更する画面は作らない）
- 締切の設定・受付終了の切り替えは作らない

【7. これができたら完成】
公開URLのフォームから出欠を送信すると、管理画面の一覧の先頭にその回答が出て、参加・不参加・未定の人数が更新される。
────────────────────

【技術的な前提（ここは変えなくていい）】
- 実行環境：Cloudflare Workers
- データベース：Cloudflare D1
- ファイル保管が必要なら：Cloudflare R2
- メール：今回は使わない
- フレームワークは指定しません。上の構成でいちばん素直に動く形を選んでください
- デザインは任せます。シンプルで読みやすければ十分です。凝った装飾は不要です

【あなたにお願いしたい進め方】
1. まず、この指示書を読んでわからない点・決まっていない点を質問してください（最大5つ）。いきなり実装を始めないでください。
2. 私が答えたら、作業計画を箇条書きで出してください。どのファイルを作り、どういう順番で動く状態にしていくかを、非エンジニアにわかる言葉で書いてください。
3. 私が「進めて」と言ったら実装してください。
4. 作業に必要なコマンド（インストール、設定、デプロイなど）は、私に打たせずにあなたが実行してください。実行前に「これから何をするか」を1行で教えてください。
5. 秘密の値（APIキーなど）が必要になったら、ファイルに直接書かず、私に「どこにどう設定するか」を聞いてください。

【禁止】
- 【6. やらないこと】に書いたものを作らないでください
- 私が書いていない機能を勝手に足さないでください。必要だと思ったら、実装せずに提案だけしてください
```

---

## 案C 簡易投票

消える手作業：「次回のテーマどれがいい？」をコミュニティに投げて、返ってきたコメントを自分で数え上げている。

```
あなたは、Cloudflare Workers と D1 を使ってWebアプリを作る開発者です。
私は非エンジニアです。専門用語を使うときは、一言の言い換えを添えて説明してください。

────────────────────
【1. 作りたいもの】
「次回のテーマはどれがいいか」を決めるための簡単な投票ページを自前で用意して、投票結果をデータベースに保存し、
自分だけが見られる管理画面で「どの選択肢に何票入ったか・誰がいつ投票したか」を確認できるアプリ。
コメントを目で数えていた流れを、1つのアプリにまとめる。

【2. 使う人】
- 投票する人（外部の人）：公開されたURLの投票ページで、選択肢から1つ選んで送信する。
  ログインはさせない。会員登録もさせない。送信して終わり。
- 管理する人（自分）：1人。管理画面を開いて選択肢ごとの票数と、投票の一覧を見る。

【3. 画面】
- 画面1「投票ページ」：誰でも見られる公開ページ。質問文「次回のテーマはどれがいいですか」を見出しに出す。
  下の4つの選択肢からどれか1つを選ぶ欄と、ニックネームの入力欄（任意）と投票ボタンを置く。
  選択肢は次の4つで固定する（この指示書に書いたとおりに埋め込んでください）。
    ・Claude Codeの基本操作
    ・Webアプリの作り方
    ・SNS発信の型
    ・お金の管理
  投票したら「投票ありがとうございました」という完了メッセージを同じページに表示する。
- 画面2「管理画面」：自分だけが見られるページ。
  上に選択肢ごとの票数（選択肢名と票数）と、投票総数を表示する。
  下に投票の一覧を新しい順で表示する。各行に 投票日時／ニックネーム／選んだ選択肢 を出す。
  ニックネームが空のときは「匿名」と表示する。
※画面はこの2つだけ。

【4. 保存するデータ】
テーブル名：votes
- id：自動採番の連番。主キー
- choice：文字列・必須。上の4つの選択肢のどれか
- nickname：文字列・任意。例「しゅう」
- created_at：日時・必須。保存された時刻を自動で入れる

【5. メール】
今回はメールなし。（メール送信はこのあとの手順で足すので、あとから足しやすい形にだけしておいてください）

【6. やらないこと】
- 投票する人向けのログイン機能・会員登録は作らない
- メール送信はしない
- 凝ったデザイン・アニメーション・グラフの描画は入れない（票数は数字で出せば十分）
- 3画面目は作らない。選択肢を管理画面から追加・編集できる機能も作らない（選択肢はこの指示書のとおりに固定する）
- 二重投票の防止・投票の締切・結果の一般公開は作らない

【7. これができたら完成】
公開URLの投票ページから投票すると、管理画面でその選択肢の票数が1増えて、投票一覧の先頭に自分の投票が出る。
────────────────────

【技術的な前提（ここは変えなくていい）】
- 実行環境：Cloudflare Workers
- データベース：Cloudflare D1
- ファイル保管が必要なら：Cloudflare R2
- メール：今回は使わない
- フレームワークは指定しません。上の構成でいちばん素直に動く形を選んでください
- デザインは任せます。シンプルで読みやすければ十分です。凝った装飾は不要です

【あなたにお願いしたい進め方】
1. まず、この指示書を読んでわからない点・決まっていない点を質問してください（最大5つ）。いきなり実装を始めないでください。
2. 私が答えたら、作業計画を箇条書きで出してください。どのファイルを作り、どういう順番で動く状態にしていくかを、非エンジニアにわかる言葉で書いてください。
3. 私が「進めて」と言ったら実装してください。
4. 作業に必要なコマンド（インストール、設定、デプロイなど）は、私に打たせずにあなたが実行してください。実行前に「これから何をするか」を1行で教えてください。
5. 秘密の値（APIキーなど）が必要になったら、ファイルに直接書かず、私に「どこにどう設定するか」を聞いてください。

【禁止】
- 【6. やらないこと】に書いたものを作らないでください
- 私が書いていない機能を勝手に足さないでください。必要だと思ったら、実装せずに提案だけしてください
```
