Vibe Code Lab
【実践】ToDoアプリを30分で作る ── AIと一緒にJavaScript入門
実践 Step 2 約4分で読めます

【実践】ToDoアプリを30分で作る ── AIと一緒にJavaScript入門

この記事で作るもの

機能的なToDoアプリを30分で。

完成する機能:

  • タスクの追加(テキスト入力 + Enterで追加)
  • タスクの完了(クリックで取り消し線)
  • タスクの削除
  • データの保存(ブラウザを閉じても消えない)
  • 残タスク数の表示

必要な事前知識: なし


ステップ1: HTMLファイルを作る

フォルダを作ってClaude Codeを起動:

mkdir todo-app
cd todo-app
claude

指示:

シンプルなToDoアプリをHTML1ファイルで作ってください。

機能:
- テキスト入力欄 + 追加ボタン
- Enterキーでも追加できる
- タスクをクリックすると完了(取り消し線)
- 各タスクに削除ボタン
- 残りのタスク数を表示
- localStorageでデータ保存(リロードしても消えない)

デザイン:
- 最大幅500px、中央寄せ
- 角丸、影付きのカード風
- 完了タスクはグレーアウト
- 削除ボタンは赤
- フォント: sans-serif
💡

HTML1ファイルに収める理由

初めてのプロジェクトは、ファイルが1つだけのほうが理解しやすい。HTML・CSS・JavaScriptを1つのファイルにまとめることで、全体像が見える。


ステップ2: 動かしてみる

AIが index.html を生成したら、ブラウザで開く:

open index.html   # Mac
start index.html  # Windows

タスクを追加して、完了して、削除してみよう。もうアプリが動いている。


ステップ3: カスタマイズする

デザインを変える

背景色をダークモード(#1a1a2e)にして。
テキストは白、アクセントカラーは#e94560にして。

機能を追加する

タスクにカテゴリ(仕事/プライベート)を選べるドロップダウンを追加して。
カテゴリ別にフィルターできるボタンも追加して。
タスクに期限(日付)を設定できるようにして。
期限が過去のタスクは赤色で表示して。
ℹ️

1つずつ追加する

機能は1つずつ追加して動作確認。まとめて追加するとバグの原因がわからなくなる。


ステップ4: 学びを振り返る

AIが書いたコードを眺めてみよう。完全に理解する必要はないが、何となく何をしているかがわかるはず。

このコードの中で、以下の部分を教えて:
1. タスクを追加している処理
2. localStorageに保存している処理
3. タスクを表示している処理
それぞれ初心者にわかるように説明して。
💡

コードを読む必要はないが、読むと楽しい

バイブコーディングではコードを書く必要はない。でも「AIが何をしているか」をざっくり理解すると、より良い指示が出せるようになる。


発展: もっと高度にしたいなら

やりたいことAIへの指示例
ドラッグで順番変更「タスクをドラッグ&ドロップで並べ替えられるようにして」
サブタスク「タスクの中にサブタスクを追加できるようにして」
テーマ切り替え「ダークモードとライトモードを切り替えるボタンを追加して」
データ共有「JSONでエクスポート/インポートできるようにして」

まとめ

30分で作ったToDoアプリだが、実は以下のプログラミングの基本が全て含まれている:

  • 入力 – テキストフィールドからの値取得
  • 処理 – データの追加・変更・削除
  • 出力 – 画面への表示
  • 保存 – localStorageでの永続化
  • イベント – クリック、Enter、ボタン操作

これらを「AIに作ってもらいながら学ぶ」のがバイブコーディングの醍醐味だ。

次の記事: もう少し大きなプロジェクトに挑戦してみよう。

他のカテゴリの記事