うさぎからの挑戦状! AI駆動開発100本ノック
うさぎからの挑戦 AI駆動開発100本ノック クリアできるかな?
うさぎからの挑戦状!
ピョンピョン!みなさん、聞いてください!このうさぎから皆さんへの特別な挑戦状です!
「AI駆動開発(AI-Driven Development)100本ノック」に挑戦してみませんか?この挑戦は、AIの力を借りて100日間で100個のアプリを作り上げるという、ちょっぴりハードだけど超ワクワクする冒険なんです!
「えっ、そんなの無理じゃない?」って思いましたか?でも大丈夫!このうさぎだって最初はプログラミングなんて難しくて飛び跳ねて逃げ出したくなりました。でも、一歩一歩進めば驚くほど上達するんですよ!
毎日1つのアプリを作るなんて、ニンジン畑を丸ごと食べるくらい大変に思えるかもしれませんが、AIの助けを借りれば、あなたもきっとできます!このうさぎと一緒に、プログラミングの森をピョンピョン飛び跳ねながら進んでいきましょう!
さあ、この挑戦状、受け取ってくれますか?100日後のあなたは、きっと今よりもっと素敵なスキルを身につけているはずです!うさぎは待ってますよ〜!
AI駆動開発100本ノックとは?
AIを活用して毎日1つのアプリケーションを開発する100日間のチャレンジです。Day 1から始めて、Day 100まで進むにつれて徐々に難易度が上がっていきます。初級から上級まで、段階的に難易度が上がるアプリ開発テーマを100個用意しました。各アプリは1日で完成できる規模に設計されています。
特徴は以下の通りです:
- 段階的な難易度: 初級・中級・上級と分かれていて、徐々にスキルアップできる
- 1日で完成: 各アプリは1日で完成できる規模に設計されている
- 明確な達成基準: 各テーマに「最低クリア要件」があり、これを満たせばクリア
「100日も続けられるかな?」と不安になるかもしれませんが、うさぎのように少しずつホップしていけば大丈夫!一歩一歩進んでいくことが大切です。
では、これから100個すべてのアプリ開発テーマと最低クリア要件を紹介していきますよ!
初級レベル(Day 1-30)
初級レベルでは、プログラミングの基本的な概念を学びながら、シンプルながらも実用的なアプリを開発します。「プログラミング、にんじんよりも難しいかも...」と思うかもしれませんが、基本的なUIやデータの扱い方など、アプリ開発の基礎を身につけることができます。うさぎでも地道に取り組めば、きっと達成できますよ!
Day 1: シンプルTODOリストアプリ
単純なUI要素を使用し、タスクの追加・完了マーク・削除ができる基本的なTODOリストアプリ。ローカルストレージでデータを保存します。
最低クリア要件
- タスクの追加機能の実装
- タスクの完了/未完了の切り替え機能の実装
- タスクの削除機能の実装
- ローカルストレージを使用したデータの永続化
- 基本的なUIとスタイリングの適用
Day 2: デジタルタイマーアプリ
カウントダウンタイマーとストップウォッチ機能を持つシンプルなタイマーアプリ。視覚的フィードバックとアラーム音を実装します。
最低クリア要件
- カウントダウンタイマー機能の実装
- ストップウォッチ機能の実装
- 一時停止と再開機能の実装
- タイマー終了時の視覚的・聴覚的アラートの実装
- 時間設定のためのシンプルなインターフェース
Day 3: メモ帳アプリ
テキストメモの作成・編集・保存ができるシンプルなメモ帳アプリ。ローカルストレージを使用してメモを保存します。
最低クリア要件
- 新規メモの作成機能の実装
- メモの編集機能の実装
- メモの削除機能の実装
- ローカルストレージを使用したメモの保存
- メモのリスト表示とメモ選択のUI実装
Day 4: シンプル電卓アプリ
基本的な四則演算と計算履歴表示機能を持つ電卓アプリ。キーボード入力にも対応します。
最低クリア要件
- 数値入力と四則演算(加減乗除)の実装
- クリア機能と連続計算機能の実装
- 計算履歴の記録と表示機能の実装
- キーボード入力のサポート
- エラーハンドリング(ゼロ除算など)
Day 5: 単位変換アプリ
長さ、重さ、温度、時間などの一般的な単位変換ができるアプリ。変換式を実装し、リアルタイムで結果を表示します。
最低クリア要件
- 少なくとも3種類のカテゴリ(長さ、重さ、温度など)の実装
- 各カテゴリ内で最低5つの単位間の変換をサポート
- 入力値のリアルタイム変換と表示
- カテゴリと単位を選択するためのUIの実装
- 入力値の検証と適切なエラーメッセージの表示
Day 6: 日付カウンターアプリ
特定の日付までの残り日数をカウントするアプリ。複数のイベントを追加・編集できます。
最低クリア要件
- イベントと目標日の追加機能の実装
- 目標日までの残り日数の計算と表示
- イベントの編集・削除機能の実装
- 複数イベントの管理とリスト表示
- ローカルストレージを使用したイベントデータの保存
Day 7: CSVビューアアプリ
CSVファイルを読み込み、テーブル形式で表示するアプリ。列のソート機能も実装します。
最低クリア要件
- CSVファイルの読み込み機能の実装
- データのテーブル形式での表示
- 列見出しをクリックしてのソート機能実装
- 基本的なフィルタリング機能の実装
- 大きなCSVファイルの効率的な処理
Day 8: JSONフォーマッターアプリ
JSONテキストを整形してハイライト表示するツール。有効なJSONかどうかの検証機能も実装します。
最低クリア要件
- JSONテキスト入力のためのテキストエリア実装
- JSONの構文検証機能の実装
- 整形された(インデントと改行が適切な)JSONの表示
- シンタックスハイライトの実装
- コピーと保存機能の追加
Day 9: テキスト統計アプリ
テキストの文字数、単語数、行数、段落数などを分析して表示するアプリ。頻出単語のランキングも表示します。
最低クリア要件
- テキスト入力のためのテキストエリア実装
- 文字数、単語数、行数、段落数のカウントと表示
- 頻出単語のランキング表示(上位10件程度)
- リアルタイム更新または分析ボタンによる統計更新
- 基本的な文字種別(英数字、記号、空白など)の分析
Day 10: URLエンコーダ/デコーダアプリ
URLの特殊文字をエンコード/デコードするツール。一括変換とコピー機能を実装します。
最低クリア要件
- テキスト入力フィールドの実装
- URLエンコード機能の実装
- URLデコード機能の実装
- 結果をクリップボードにコピーする機能
- 入力検証と適切なエラーメッセージの表示
うさぎの耳がピンと立つような便利なツールばかりですね!でも、まだまだ続きますよ〜
Day 11: 数当てゲームアプリ
コンピュータが選んだ数字をヒントを元に予想するゲーム。難易度レベルも設定できます。
最低クリア要件
- ランダムな数字の生成機能の実装
- ユーザーが数字を予想するためのUI実装
- 予想結果のフィードバック(大きい/小さい)表示
- 予想回数のカウントと表示
- 難易度レベル(数値範囲の変更)設定機能
Day 12: じゃんけんゲームアプリ
プレイヤーとコンピュータがじゃんけんで対戦するゲーム。勝敗の統計も表示します。
最低クリア要件
- ユーザーの手(グー・チョキ・パー)選択UI実装
- コンピュータの手をランダム生成する機能実装
- 勝敗判定ロジックの実装
- ゲーム結果(勝ち/負け/引き分け)の表示
- 戦績の記録と統計表示機能
Day 13: サイコロシミュレーターアプリ
1面から100面までの様々なサイコロをシミュレートするアプリ。複数のダイスを同時に振ることもできます。
最低クリア要件
- サイコロの面数選択機能(最低6種類以上)
- サイコロを振る(ランダム値生成)機能の実装
- 複数のサイコロを同時に振る機能の実装
- 出目の合計値の計算と表示
- サイコロを振る視覚的アニメーションの実装
Day 14: 迷路生成アプリ
アルゴリズムを使って自動的に迷路を生成し表示するアプリ。難易度や大きさをカスタマイズできます。
最低クリア要件
- 迷路生成アルゴリズムの実装
- 迷路のサイズ設定機能の実装
- 生成された迷路の視覚的表示
- 迷路の再生成機能
- 迷路の難易度調整パラメータ(少なくとも1つ)
Day 15: 簡易ドローイングアプリ
マウスやタッチでお絵描きができるシンプルなツール。色の変更や線の太さ調整、消しゴム機能を実装します。
最低クリア要件
- キャンバス上での描画機能の実装
- 描画色の選択機能(最低8色)の実装
- 線の太さ調整機能の実装
- 消しゴム機能の実装
- 描画のクリア機能と保存機能の実装
Day 16: フラッシュカードアプリ
単語や用語を学ぶためのフラッシュカードアプリ。カード作成とランダム出題機能を実装します。
最低クリア要件
- フラッシュカード(表面と裏面のテキスト)の作成機能
- 作成したカードの保存と管理機能
- カードのランダム出題機能の実装
- カードを表面/裏面で切り替える機能
- 学習進捗の簡易トラッキング機能
Day 17: 簡易計算ドリルアプリ
子供向けの基本的な計算問題を出題するアプリ。難易度レベルと問題の種類を選択できます。
最低クリア要件
- 加減乗除の基本計算問題の自動生成機能
- 難易度レベル(少なくとも3段階)の設定機能
- 問題種類(加算・減算・乗算・除算)の選択機能
- 回答入力と正誤判定機能の実装
- スコアと正答率の記録・表示機能
Day 18: 暗記タイマーアプリ
ポモドーロテクニックを応用した学習用タイマー。学習時間と休憩時間を交互に管理します。
最低クリア要件
- 学習時間(デフォルト25分)と休憩時間(デフォルト5分)のタイマー実装
- 時間の経過表示(視覚的カウントダウン)
- 時間終了時のアラート(音と視覚効果)
- 学習・休憩サイクルの自動切り替え機能
- 時間設定のカスタマイズ機能
Day 19: 国旗クイズアプリ
世界の国旗を表示し、国名を当てるクイズゲーム。スコアや正解率を記録します。
最低クリア要件
- 少なくとも30カ国以上の国旗データの実装
- 国旗画像の表示と国名選択肢の提示
- 正誤判定と正解の表示機能
- スコアのカウントと記録機能
- ゲームモード(時間制限・問題数制限)の実装
Day 20: 単語帳アプリ
語学学習のための単語登録・テスト機能を持つアプリ。学習進捗を記録する機能も実装します。
最低クリア要件
- 単語と意味(および例文)の登録機能
- 登録単語のリスト表示と検索機能
- 単語テストモード(ランダム出題)の実装
- 正誤記録と復習優先度の管理機能
- カテゴリ別の単語グループ管理機能
「うさぎのジャンプくらい速く開発できるといいな!」と思っても、焦らずに一つずつ進みましょう。続いて後半です!
Day 21: 水分摂取記録アプリ
1日の水分摂取量を記録・管理するアプリ。目標設定と進捗のビジュアル表示を実装します。
最低クリア要件
- 水分摂取量の記録機能の実装
- 1日の目標摂取量設定機能の実装
- 進捗状況のビジュアル表示(グラフやゲージなど)
- 過去の記録の閲覧と分析機能
- リマインダー通知機能の実装
Day 22: 睡眠記録アプリ
就寝・起床時間を記録して睡眠パターンを可視化するアプリ。睡眠の質を評価する機能も追加します。
最低クリア要件
- 就寝時間と起床時間の記録機能の実装
- 睡眠時間の計算と表示機能
- 睡眠パターンの視覚的グラフ表示
- 睡眠の質の自己評価入力機能
- 週間・月間の睡眠統計レポート機能
Day 23: シンプル歩数計アプリ
歩数をカウントして記録するアプリ。日別・週別・月別の統計を表示します。
最低クリア要件
- 端末のモーションセンサーを使用した歩数カウント機能
- リアルタイムでの歩数表示機能
- 日別・週別・月別の歩数記録と統計表示
- 目標歩数の設定と達成度表示機能
- バックグラウンド動作と省電力モードの実装
Day 24: 習慣トラッカーアプリ
日々の習慣の達成状況を記録するアプリ。連続達成日数の表示や成功率のグラフ化機能を実装します。
最低クリア要件
- 習慣(タスク)の作成と管理機能の実装
- 日々の達成状況のチェック機能
- 連続達成日数のカウントと表示
- 習慣ごとの成功率のグラフ表示
- リマインダー設定と通知機能の実装
Day 25: 食事写真日記アプリ
食事の写真と簡単なメモを記録するアプリ。カレンダー表示で過去の記録を閲覧できます。
最低クリア要件
- カメラ機能またはギャラリーからの写真選択機能
- 写真に関連するメモ・タグ入力機能
- 食事の種類(朝食・昼食・夕食・間食)の分類機能
- カレンダーUI上での記録閲覧機能
- 過去の記録の検索・フィルタリング機能
Day 26: カラーパレットアプリ
色の組み合わせを作成・保存できるツール。HEX、RGB、HSL形式での色コード表示と変換機能を実装します。
最低クリア要件
- カラーピッカーでの色選択機能の実装
- 選択した色のHEX、RGB、HSL形式での表示
- 複数の色を組み合わせたパレット作成機能
- パレットの保存と管理機能
- 色のコピー機能とエクスポート機能の実装
Day 27: ランダム名前生成アプリ
架空の人名やビジネス名をランダムに生成するアプリ。ジャンルやスタイルを選択できます。
最低クリア要件
- 人名(名・姓)のランダム生成機能
- ビジネス名やプロジェクト名の生成機能
- ジャンルやスタイル(SF風、ファンタジー風など)の選択機能
- 生成結果の保存・コピー機能
- 言語や文化圏ごとの名前生成オプション
Day 28: パスワード生成アプリ
長さや文字種を指定して安全なパスワードを生成するツール。パスワードの強度評価機能も実装します。
最低クリア要件
- パスワードの長さ設定機能の実装
- 文字種(大文字、小文字、数字、記号)の選択機能
- ランダムパスワードの生成機能
- パスワード強度の評価と表示機能
- 生成したパスワードのコピー機能
Day 29: QRコード生成アプリ
テキストやURLからQRコードを生成するアプリ。QRコードの保存・共有機能を実装します。
最低クリア要件
- テキスト/URLの入力フィールド実装
- QRコードの自動生成機能
- QRコードサイズやエラー訂正レベルの調整機能
- 生成したQRコードの画像としての保存機能
- QRコードの共有機能(SNSやメールなど)
Day 30: 天気情報表示アプリ
都市名から現在の天気情報を取得して表示するアプリ。気温、湿度、風速などの詳細情報も表示します。
最低クリア要件
- 都市名または位置情報による天気データの取得機能
- 現在の天気状況(気温、湿度、風速など)の表示
- 天気予報(最低24時間)の表示機能
- 天気に合わせた適切なアイコンやイラストの表示
- お気に入り都市の保存と管理機能
「うさぎも30日続けられたら、かなりプログラミングの腕前が上がってるはず!」初級レベルを終えると、基本的なアプリ開発スキルが身についているでしょう。次は中級レベルに進みましょう!
中級レベル(Day 31-70)
中級レベルでは、より複雑な機能やユーザー体験を提供するアプリの開発に挑戦します。「草を食べるよりも集中力がいるかも...」ですが、API連携やデータの可視化、リアルタイム更新など、より高度な技術を習得していきます。AIとの連携方法も学ぶことで、現代のアプリ開発スキルが身につきます。
Day 31: カンバンボードアプリ
タスクを「未着手」「進行中」「完了」などの列で管理できるカンバン方式のタスク管理アプリ。ドラッグ&ドロップでタスクを移動できます。
最低クリア要件
- 複数の列(未着手、進行中、完了など)を持つボード構造
- タスクカードの作成・編集・削除機能
- ドラッグ&ドロップでのタスク移動機能
- タスクの詳細情報(説明、期限、担当者など)設定機能
- ボードとタスクの永続保存機能
Day 32: ポモドーロタイマーアプリ
25分の作業時間と5分の休憩時間を自動で切り替えるタイマー。長時間作業後の長い休憩も設定できます。
最低クリア要件
- 25分(作業)/5分(休憩)の基本サイクル実装
- 4サイクル後の長い休憩(15分)の自動切り替え
- タイマーの一時停止・再開・リセット機能
- 各フェーズ(作業/休憩)の視覚的表示と通知
- サイクル回数のカウントと記録機能
Day 33: スマートTODOリストアプリ
優先度、締切日、カテゴリなどの属性を持つタスク管理アプリ。フィルタリングと並べ替え機能を実装します。
最低クリア要件
- タスクの複数属性(優先度、締切日、カテゴリ)設定機能
- 属性に基づくタスクのフィルタリング機能
- 複数条件での並べ替え機能
- タスク間の依存関係設定機能
- タスクの進捗状況追跡機能
Day 34: マークダウンエディタアプリ
マークダウン記法でメモを取り、リアルタイムプレビュー表示ができるエディタ。ファイル保存とエクスポート機能を実装します。
最低クリア要件
- マークダウン記法のテキスト入力機能
- リアルタイムでのプレビュー表示機能
- 基本的なマークダウン構文のハイライト機能
- 作成したドキュメントの保存機能
- HTML、PDF等の形式へのエクスポート機能
Day 35: スケジュール管理アプリ
日・週・月表示のカレンダーでイベントやタスクを管理するアプリ。繰り返しイベントや通知機能を実装します。
最低クリア要件
- 日次/週次/月次のカレンダー表示切替機能
- イベントの作成・編集・削除機能
- 繰り返しイベント(毎日、毎週など)の設定機能
- イベント通知機能
- イベントのカテゴリ分けと色分け表示機能
Day 36: PDFビューア・注釈アプリ
PDFファイルを表示し、ハイライトやコメントなどの注釈を追加できるアプリ。ページ間のナビゲーション機能も実装します。
最低クリア要件
- PDFファイルの読み込みと表示機能
- ページ間のナビゲーション機能
- テキストのハイライト機能
- コメントや注釈の追加機能
- 注釈付きPDFの保存/エクスポート機能
Day 37: コード整形ツールアプリ
様々なプログラミング言語のコードを整形・ハイライト表示するツール。インデントの調整やコード規約への準拠チェック機能も実装します。
最低クリア要件
- 最低5つのプログラミング言語対応
- コードの自動整形(インデント、スペース/タブ変換)機能
- シンタックスハイライト表示機能
- 基本的なコード規約への準拠チェック機能
- 整形後のコードのコピーまたはダウンロード機能
Day 38: データ可視化アプリ
CSVやJSONデータを読み込み、様々なグラフやチャートで視覚化するアプリ。グラフのカスタマイズと保存機能を実装します。
最低クリア要件
- CSV/JSONデータの読み込みと解析機能
- 最低3種類のグラフ・チャート(棒グラフ、折れ線グラフなど)実装
- グラフパラメータ(軸、凡例、色など)のカスタマイズ機能
- データのフィルタリングと集計機能
- 生成したグラフの画像としての保存機能
Day 39: 画像変換・圧縮アプリ
画像のリサイズ、フォーマット変換、圧縮を行うツール。一括処理機能とプレビュー表示も実装します。
最低クリア要件
- 画像のアップロードと表示機能
- リサイズ(幅・高さ指定)機能
- フォーマット変換(JPEG、PNG、GIF等)機能
- 圧縮レベル調整機能
- 変換後の画像プレビューと保存機能
Day 40: レシピデータベースアプリ
料理レシピの登録・検索・カテゴリ分けができるアプリ。材料から検索する機能や調理手順のステップ表示を実装します。
最低クリア要件
- レシピの登録・編集・削除機能
- 料理名、材料、カテゴリによる検索機能
- 調理手順のステップ表示機能
- 材料リストと分量管理機能
- お気に入りレシピの保存と管理機能
うさぎでもできるかな?と不安になるかもしれませんが、一歩ずつ学んでいけば大丈夫です!中級レベルの続きを見ていきましょう。
Day 41: ファイル暗号化アプリ
テキストやファイルをパスワードで暗号化・復号化するツール。複数の暗号化アルゴリズムに対応します。
最低クリア要件
- テキストや小〜中サイズファイルの暗号化機能
- 少なくとも2種類の暗号化アルゴリズム実装
- パスワードを使用した暗号化・復号化機能
- 暗号化ファイルの保存と読み込み機能
- 暗号化強度の選択オプション
Day 42: ニュースフィードアプリ
複数のRSSフィードを統合して表示するアプリ。カテゴリ分けとフィルタリング機能を実装します。
最低クリア要件
- RSSフィードのURL追加と管理機能
- フィードの読み込みと記事リスト表示機能
- カテゴリごとのフィード分類機能
- キーワードによる記事フィルタリング機能
- 既読/未読管理と記事保存機能
Day 43: 地図情報検索アプリ
場所を検索し、地図上に表示するアプリ。現在地からの距離計算や経路案内機能も実装します。
最低クリア要件
- 地図表示と基本的な操作(拡大・縮小・移動)機能
- 住所または名称による場所検索機能
- 検索結果のマーカー表示と情報ウィンドウ機能
- 現在地からの距離計算機能
- 2地点間の簡易経路表示機能
Day 44: シンプルチャットアプリ
リアルタイムでメッセージをやり取りできるチャットツール。ユーザー認証とメッセージの永続化を実装します。
最低クリア要件
- ユーザー登録と認証機能
- テキストメッセージの送受信機能
- リアルタイムメッセージ更新機能
- メッセージ履歴の保存と表示機能
- 基本的なユーザープロフィール管理機能
Day 45: 掲示板アプリ
スレッド形式で投稿・返信できる掲示板アプリ。カテゴリ分けとユーザーのアカウント管理機能を実装します。
最低クリア要件
- スレッド作成と投稿機能
- 返信(ネスト構造)機能
- カテゴリ別スレッド分類機能
- ユーザーアカウント管理(登録・ログイン)機能
- 投稿の検索とソート機能
Day 46: イベント計画アプリ
グループでのイベント日程調整ができるアプリ。参加可否の投票機能と結果の可視化を実装します。
最低クリア要件
- イベント作成と詳細設定機能
- 候補日時の追加と編集機能
- 参加者の招待と管理機能
- 参加可否の投票機能
- 投票結果の集計と可視化機能
Day 47: ビデオ会議アプリ
簡易的なビデオ通話機能を備えたアプリ。画面共有とチャット機能も実装します。
最低クリア要件
- カメラとマイクのアクセス・制御機能
- 1対1のビデオ通話機能
- テキストチャット機能
- 簡易的な画面共有機能
- 通話の開始・終了と参加者管理機能
Day 48: 共同編集ドキュメントアプリ
複数ユーザーが同時編集できるドキュメントツール。変更履歴の記録と衝突解決機能を実装します。
最低クリア要件
- テキストドキュメントの作成と編集機能
- リアルタイムの共同編集機能
- ユーザー別の編集表示(カーソル位置など)
- 変更履歴の記録と表示機能
- 編集衝突の検出と解決機能
Day 49: 匿名フィードバックアプリ
匿名でフィードバックを収集・管理できるツール。回答の統計分析と可視化機能を実装します。
最低クリア要件
- フィードバックフォームの作成と管理機能
- 匿名回答の収集機能
- 回答データの保存と管理機能
- 回答の集計と分析機能
- 結果の視覚化(グラフなど)機能
Day 50: 音楽プレイヤーアプリ
音楽ファイルの再生・プレイリスト管理ができるプレイヤー。イコライザーと視覚エフェクト機能も実装します。
最低クリア要件
- 音楽ファイルの読み込みと再生機能
- プレイリストの作成と管理機能
- 基本的な再生制御(再生、一時停止、停止、スキップ)
- シンプルなイコライザー機能
- 再生中の視覚エフェクト表示機能
うさぎの耳がぴくぴく動くほど面白いアプリたちですね!引き続き中級レベルの後半です。
Day 51: 簡易動画編集アプリ
動画のトリミングやフィルター適用、テキスト挿入などの基本的な編集ができるツール。編集履歴とプレビュー機能を実装します。
最低クリア要件
- 動画ファイルの読み込みと再生機能
- 動画のトリミング(開始・終了時間の設定)機能
- 基本的なフィルター適用機能
- テキストやシンプル図形の挿入機能
- 編集結果のプレビューと保存機能
Day 52: クイズゲームアプリ
様々なジャンルの問題を出題するクイズゲーム。スコア管理とランキング機能を実装します。
最低クリア要件
- 複数ジャンルのクイズ問題データベース(最低50問)
- 問題表示と回答選択インターフェース
- 正誤判定とスコア計算機能
- ゲーム結果の保存とハイスコア管理
- カテゴリ選択と難易度設定機能
Day 53: コマンドバトルRPGアプリ
コマンド選択式の簡易RPGゲーム。キャラクター育成とストーリー進行機能を実装します。
最低クリア要件
- プレイヤーキャラクターの作成と基本ステータス設定
- ターン制バトルシステムの実装
- 複数の攻撃・防御コマンドの実装
- 敵キャラクターAIの実装
- 経験値システムとレベルアップ機能
Day 54: 謎解きゲームアプリ
テキストベースの謎解きアドベンチャーゲーム。状態管理とヒントシステムを実装します。
最低クリア要件
- テキストベースのストーリー表示機能
- プレイヤーの選択による分岐シナリオ
- アイテムの収集と使用機能
- ゲーム状態の保存と復元機能
- 段階的なヒント提供システム
Day 55: デジタルボードゲームアプリ
チェスや将棋などの古典的ボードゲームをデジタル化。AI対戦と対人戦モードを実装します。
最低クリア要件
- ゲームボードの視覚的表示機能
- 駒の移動ルールと制約の実装
- 対人戦(ホットシート)モードの実装
- 基本的なAI対戦モードの実装
- ゲーム状態の保存と読み込み機能
Day 56: 学習管理アプリ
学習科目や時間、進捗を管理するアプリ。目標設定と達成度の可視化機能を実装します。
最低クリア要件
- 学習科目・コースの登録と管理機能
- 学習時間の記録と追跡機能
- 学習目標の設定と進捗管理機能
- 学習履歴の視覚化(グラフ・チャート)機能
- リマインダーと学習計画機能
Day 57: 暗記学習アプリ
スペーシング効果を活用した効率的な暗記学習ツール。学習アルゴリズムに基づく出題スケジュールを実装します。
最低クリア要件
- 学習項目(カード)の作成と管理機能
- スペーシング効果に基づく復習スケジュール機能
- 自己評価に基づく難易度調整機能
- 学習進捗の追跡と視覚化機能
- カテゴリ別の学習項目管理機能
Day 58: コーディング練習アプリ
プログラミング問題を解いて学べるアプリ。自動採点とヒント機能を実装します。
最低クリア要件
- プログラミング問題のデータベース実装
- コードエディタとシンタックスハイライト機能
- 基本的なコード実行と結果表示機能
- 自動テストケースによる採点機能
- 段階的なヒント提供システム
Day 59: 電子辞書アプリ
オフラインでも使える多言語辞書アプリ。発音機能と例文表示も実装します。
最低クリア要件
- 少なくとも2言語間の単語検索機能
- 発音記号と音声再生機能
- 単語の複数の意味と例文表示
- お気に入り単語の保存機能
- 検索履歴の記録と管理機能
Day 60: 数学問題ソルバーアプリ
数式を入力して解を求めるアプリ。計算過程の表示と図形的解釈機能も実装します。
最低クリア要件
- 基本的な数式入力インターフェース
- 代数方程式の解法機能
- 関数のグラフ表示機能
- 計算過程のステップ表示機能
- 計算結果の保存と履歴管理機能
「うさぎのジャンプを数学ソルバーで分析できるかな?」と遊び心も持ちながら、さらに続きを見ていきましょう!
Day 61: 学習プログレストラッカーアプリ
学習目標と進捗を視覚的に管理するツール。統計分析とモチベーション維持機能を実装します。
最低クリア要件
- 学習目標と計画の設定機能
- 日々の学習活動の記録機能
- 進捗の視覚的表示(グラフ・チャート)機能
- 統計分析(傾向、パターン)機能
- モチベーション維持のための報酬/ストリーク機能
Day 62: 食事栄養管理アプリ
食事内容を記録し、栄養バランスを分析するアプリ。食品データベースと目標設定機能を実装します。
最低クリア要件
- 食品データベース(最低200品目)と検索機能
- 食事記録(食品、量、時間)の入力機能
- 摂取カロリーと主要栄養素の計算機能
- 栄養バランスの視覚的表示機能
- 栄養摂取目標の設定と進捗管理機能
Day 63: ワークアウト記録アプリ
トレーニングの種類、回数、重量などを記録するアプリ。プログラム作成と進捗グラフ表示を実装します。
最低クリア要件
- トレーニング種目のデータベースと検索機能
- ワークアウトセッションの記録機能
- 重量、回数、セット数などの詳細記録機能
- 進捗の視覚的表示(グラフ・チャート)機能
- カスタムワークアウトプログラムの作成機能
Day 64: 瞑想ガイドアプリ
ガイド付きの瞑想セッションを提供するアプリ。タイマーとバックグラウンドサウンド設定を実装します。
最低クリア要件
- 複数の瞑想ガイダンスの音声またはテキスト
- カスタマイズ可能なタイマー機能
- バックグラウンドサウンド(環境音)選択機能
- 瞑想セッションの記録と統計機能
- 瞑想リマインダーとスケジュール機能
Day 65: 家計簿アプリ
収支を記録し、カテゴリごとに分析するツール。予算設定と支出予測機能を実装します。
最低クリア要件
- 収入・支出の記録と分類機能
- カテゴリ別の集計と分析機能
- 時系列での収支グラフ表示機能
- 予算設定と使用状況の追跡機能
- 基本的な支出予測機能
Day 66: 体重・体組成記録アプリ
体重や体脂肪率などの変化をグラフ化するアプリ。目標設定と達成度トラッキングを実装します。
最低クリア要件
- 体重・体組成データの記録機能
- 測定値の時系列グラフ表示機能
- 目標設定と達成度追跡機能
- 統計分析(傾向、平均値など)機能
- 記録リマインダーと定期通知機能
Day 67: 献立計画アプリ
週間の献立を計画し、買い物リストを生成するアプリ。栄養バランスチェック機能も実装します。
最低クリア要件
- 日別・食事別の献立計画機能
- レシピデータベースと検索機能
- 献立からの自動買い物リスト生成機能
- 栄養バランスの簡易チェック機能
- 献立のテンプレート保存と再利用機能
Day 68: AIチャットボットアプリ
AIを活用した会話型アシスタントアプリ。質問応答と会話履歴管理機能を実装します。
最低クリア要件
- 自然言語処理APIの連携と活用
- テキスト入力と応答表示機能
- 基本的な対話と質問応答機能
- 会話コンテキストの維持機能
- 会話履歴の保存と管理機能
Day 69: AI画像生成アプリ
テキストプロンプトから画像を生成するAI連携ツール。スタイル設定と生成画像の保存機能を実装します。
最低クリア要件
- テキストプロンプト入力インターフェース
- AI画像生成APIとの連携
- 生成パラメータ(スタイル、サイズなど)調整機能
- 生成画像の表示と保存機能
- 生成履歴の管理機能
Day 70: AIテキスト要約アプリ
長文をAIで自動要約するツール。要約レベルの調整と元テキストのハイライト機能を実装します。
最低クリア要件
- テキスト入力または文書アップロード機能
- AI要約APIとの連携
- 要約レベル(長さ・詳細度)の調整機能
- 元テキストと要約の対応ハイライト機能
- 要約結果の保存とエクスポート機能
「中級レベルをクリアしたうさぎなら、かなりのアプリが作れるようになってるはず!」ここまでくれば、かなり高度なアプリ開発スキルが身についています。最後に上級レベルへ進みましょう!
上級レベル(Day 71-100)
上級レベルでは、実務レベルの複雑なアプリケーション開発に挑戦します。「うさぎのジャンプくらい高度な技術が必要かも!」と感じるかもしれませんが、ここまで来れば、かなりのスキルが身についているはずです。マルチユーザー対応やマイクロサービス設計など、より高度な概念や技術を学びましょう。
Day 71: プロジェクト管理アプリ
ガントチャート、リソース管理、進捗追跡機能を備えたPM支援ツール。依存関係の管理とクリティカルパス分析機能を実装します。
最低クリア要件
- プロジェクト計画とタスク分解機能
- ガントチャート形式のスケジュール表示
- タスク間の依存関係設定と管理機能
- リソース(人員、予算等)の割り当てと管理
- クリティカルパスの自動計算と表示機能
Day 72: 知識ベース管理アプリ
社内ナレッジを構造化して保存・検索できるWikiシステム。バージョン管理とアクセス権限設定を実装します。
最低クリア要件
- 構造化された記事作成と編集機能
- 記事間のリンクと階層構造管理
- 全文検索と高度な検索フィルタ機能
- バージョン管理と変更履歴表示機能
- ユーザーロールとアクセス権限管理機能
Day 73: オフラインファーストメモアプリ
オフラインでも使え、オンライン時に自動同期する高機能メモツール。コンフリクト解決とマルチデバイス対応を実装します。
最低クリア要件
- オフライン状態でのメモ作成・編集機能
- オンライン復帰時の自動同期機能
- 同期コンフリクト検出と解決機能
- 複数デバイス間でのシームレスな同期
- 変更履歴とバージョン管理機能
Day 74: マルチデバイス同期カレンダーアプリ
複数デバイス間で同期するカレンダー&リマインダー。イベント共有と通知機能を実装します。
最低クリア要件
- 複数デバイス間でのリアルタイム同期機能
- イベントの作成・編集・削除と繰り返し設定
- リマインダーと通知機能
- イベント共有と参加者管理機能
- オフライン操作と同期遅延解決機能
Day 75: ビジネスプロセス自動化アプリ
定型業務のワークフローを自動化するツール。条件分岐と承認フローのカスタマイズ機能を実装します。
最低クリア要件
- ワークフロー設計のビジュアルエディタ
- 条件分岐と決定ポイントの設定機能
- 承認ステップと通知機能
- データ入力フォームと検証ルール作成
- ワークフロー実行状況の追跡と監視機能
Day 76: ドキュメント管理システムアプリ
バージョン管理、アクセス権限管理を備えたドキュメント管理システム。全文検索と文書分類機能を実装します。
最低クリア要件
- 文書のアップロード・管理・バージョン管理
- メタデータとタグによる文書分類機能
- 全文検索と高度な検索フィルタ機能
- ユーザーロールと文書別アクセス権限設定
- 文書の共有とコラボレーション機能
Day 77: データ分析ダッシュボードアプリ
複数のデータソースから情報を集約して可視化するツール。カスタムレポートとアラート設定機能を実装します。
最低クリア要件
- 複数データソースからのデータ取得・統合機能
- カスタマイズ可能なダッシュボードレイアウト
- 複数の可視化コンポーネント(グラフ、テーブル等)
- インタラクティブなフィルタリングと掘り下げ機能
- しきい値に基づくアラート設定機能
Day 78: ETL処理アプリ
データの抽出・変換・ロードを行うパイプラインツール。スケジュール実行とエラーハンドリング機能を実装します。
最低クリア要件
- 複数ソースからのデータ抽出機能
- データクレンジングと変換ルール設定機能
- 変換済みデータの出力先設定機能
- スケジュール実行と監視機能
- エラーハンドリングとリトライ戦略実装
Day 79: リアルタイムデータモニタリングアプリ
センサーや外部APIからのデータをリアルタイム表示するアプリ。閾値アラートとトレンド分析機能を実装します。
最低クリア要件
- 外部データソースのリアルタイム接続機能
- データの視覚的なリアルタイム表示機能
- 閾値設定とアラート通知機能
- 履歴データのトレンド分析機能
- カスタム監視ダッシュボード作成機能
Day 80: 高度な検索エンジンアプリ
複数の検索条件やフィルターを活用した検索システム。ファセット検索と関連性ランキング機能を実装します。
最低クリア要件
- インデックス作成と高速検索機能
- 複合検索条件とブール演算子対応
- ファセット検索(カテゴリごとの集計と絞り込み)
- 関連性スコアリングとランキングアルゴリズム
- 検索結果のハイライトと要約表示機能
うさぎもびっくりの高度なアプリが続きます!後半も頑張りましょう!
Day 81: メディアライブラリ管理アプリ
画像・動画・音声ファイルを管理・タグ付けするツール。メタデータ編集と自動分類機能を実装します。
最低クリア要件
- 各種メディアファイルのアップロードと管理
- メタデータとタグによる整理・分類機能
- メディアプレビューと基本的な編集機能
- 自動タグ付けと分類機能(AIの活用)
- 検索と高度なフィルタリング機能
Day 82: チーム協業ワークスペースアプリ
チャット、タスク、ファイル共有を統合したワークスペース。活動ログとインテグレーション機能を実装します。
最低クリア要件
- チームチャットとスレッドディスカッション機能
- タスク管理と割り当て機能
- ファイル共有とバージョン管理機能
- 活動ログとユーザー通知機能
- 外部ツール(カレンダー、メールなど)との連携
Day 83: リアルタイム共同編集アプリ
複数ユーザーでのリアルタイム同時編集機能を持つエディタ。変更の可視化と競合解決機能を実装します。
最低クリア要件
- 複数ユーザーの同時編集機能
- リアルタイムの変更反映と同期機能
- 編集中のユーザー位置表示機能
- 変更の競合検出と解決機能
- 変更履歴と復元機能
Day 84: バーチャルミーティングルームアプリ
アバターやインタラクティブ要素を持つ会議ツール。空間音声と共有ホワイトボード機能を実装します。
最低クリア要件
- 仮想空間内のアバター移動と表現機能
- 空間ベースの音声通信機能
- 共有ホワイトボードと描画ツール
- スクリーン共有と資料プレゼン機能
- 会議の録画と議事録生成機能
Day 85: コミュニティプラットフォームアプリ
特定のテーマに特化したコミュニティ運営プラットフォーム。モデレーションツールとレピュテーションシステムを実装します。
最低クリア要件
- ユーザープロフィールと認証システム
- 投稿・コメント機能とコンテンツ整理
- コンテンツモデレーションツールと報告機能
- ユーザーレピュテーションと特権システム
- コミュニティ分析と統計ダッシュボード
Day 86: マルチメディアメッセージングアプリ
テキスト、音声、ビデオ、ファイル共有機能を統合したメッセンジャー。エンドツーエンド暗号化とメッセージ編集機能を実装します。
最低クリア要件
- テキスト、音声、画像、動画メッセージング機能
- リアルタイム通知とステータス表示機能
- エンドツーエンド暗号化の実装
- メッセージ編集と削除機能
- ファイル共有と表示機能
Day 87: 3Dモデルビューア・エディタアプリ
3Dモデルの表示・編集が可能なツール。テクスチャ編集とアニメーション機能を実装します。
最低クリア要件
- 3Dモデルの読み込みと表示機能
- モデルの回転・拡大・移動操作機能
- 基本的な3D編集(形状変更)機能
- テクスチャマッピングと編集機能
- 簡単なアニメーション作成と再生機能
Day 88: アニメーション制作アプリ
フレームベースのアニメーション作成ツール。タイムラインエディタとレイヤー管理機能を実装します。
最低クリア要件
- キャンバスとベーシックな描画ツール
- フレームベースのアニメーション編集機能
- タイムラインとキーフレーム管理機能
- レイヤー管理と複合効果機能
- アニメーションのプレビューとエクスポート機能
Day 89: インタラクティブストーリーテリングアプリ
選択肢によってストーリーが分岐する小説作成・閲覧ツール。条件分岐とステート管理機能を実装します。
最低クリア要件
- ストーリーセグメントの作成と編集機能
- 選択肢と分岐パスの設定機能
- 状態変数と条件分岐ロジック実装
- ストーリーフローの視覚的マッピング機能
- ストーリー再生と進行状態保存機能
Day 90: 音楽制作・ミキシングアプリ
複数トラックの録音・編集・ミキシングができるDAWツール。エフェクト処理とMIDI編集機能を実装します。
最低クリア要件
- マルチトラック録音と編集機能
- オーディオサンプルと仮想楽器の使用
- ミキシングコンソール(ボリューム、パン等)
- オーディオエフェクトの適用と調整機能
- MIDI入力と編集機能
いよいよゴールが見えてきました!最後の10日間です!うさぎも最後まで頑張りましょう!
Day 91: AR(拡張現実)体験アプリ
カメラを通して仮想オブジェクトを表示するAR体験アプリ。3Dオブジェクト配置と環境認識機能を実装します。
最低クリア要件
- カメラフィードでのAR表示機能
- 平面検出と3Dオブジェクト配置機能
- オブジェクトの操作(移動、回転、スケール)
- 基本的な環境認識と照明適応機能
- AR体験の保存と共有機能
Day 92: AIパーソナライズド学習アプリ
ユーザーの学習スタイルや進捗に合わせてカスタマイズするAI学習ツール。理解度評価と適応的コンテンツ提供機能を実装します。
最低クリア要件
- 学習コンテンツのデータベース構築
- ユーザーの学習パターン分析機能
- 理解度評価のための小テスト機能
- AI推奨による学習パス最適化
- パーソナライズされた進捗ダッシュボード
Day 93: ディープフェイク検出アプリ
AI技術を使って合成メディアを検出するツール。信頼度スコアリングと分析レポート機能を実装します。
最低クリア要件
- 画像・動画のアップロードと分析機能
- AIベースの合成メディア検出アルゴリズム実装
- 信頼度スコアの計算と表示機能
- 検出根拠の視覚的ハイライト機能
- 詳細分析レポートの生成機能
Day 94: AIコンテンツキュレーションアプリ
ユーザーの好みを学習し、最適なコンテンツを提案するツール。フィードバック学習とパーソナライズ設定機能を実装します。
最低クリア要件
- ユーザー嗜好の初期設定と学習機能
- コンテンツ分類と特徴抽出機能
- パーソナライズされた推奨アルゴリズム
- ユーザーフィードバックの収集と分析機能
- 推奨設定のカスタマイズと微調整機能
Day 95: AI画像解析・検索アプリ
画像内の物体や特徴を認識し、類似画像を検索するツール。タグ生成とビジュアル検索機能を実装します。
最低クリア要件
- 画像アップロードと管理機能
- 画像内のオブジェクト・シーン認識機能
- 自動タグ生成と分類機能
- 視覚的特徴に基づく類似画像検索
- 検索フィルタとカスタムタグ追加機能
Day 96: AI自然言語処理アプリ
テキスト分析、感情分析、言語翻訳などを行うNLPツール。カスタムモデル学習機能も実装します。
最低クリア要件
- テキスト分析(要約、キーワード抽出)機能
- 感情分析と態度検出機能
- 複数言語間の翻訳機能
- テキスト生成と補完機能
- 特定ドメイン向けカスタムモデル調整機能
Day 97: IoTデバイス管理ダッシュボードアプリ
家庭内のスマートデバイスを一元管理するツール。自動化ルール設定とエネルギー使用分析機能を実装します。
最低クリア要件
- 複数IoTデバイスの接続と状態表示機能
- デバイスのリモート制御インターフェース
- 条件ベースの自動化ルール設定機能
- デバイス使用状況と履歴の記録機能
- エネルギー使用の分析と最適化提案機能
Day 98: マルチサービス連携アプリ
複数のWeb APIを組み合わせて新機能を提供するツール。ワークフロー設計とAPI認証管理機能を実装します。
最低クリア要件
- 複数サービスのAPI連携機能
- API認証と認証情報管理機能
- ビジュアルワークフロー設計インターフェース
- トリガーとアクションのカスタマイズ機能
- 実行ログとエラー処理機能
Day 99: ブロックチェーン資産管理アプリ
暗号資産やNFTを管理・追跡するツール。トランザクション履歴と市場価値追跡機能を実装します。
最低クリア要件
- 複数ウォレットの統合と残高表示機能
- トランザクション履歴の記録と表示機能
- 資産の市場価値とポートフォリオ評価機能
- NFTコレクションの管理と表示機能
- 価格アラートと通知設定機能
Day 100: マイクロサービスアーキテクチャアプリ
複数の独立したサービスで構成されるスケーラブルなアプリケーション。サービスディスカバリとロードバランシング機能を実装します。
最低クリア要件
- 少なくとも3つの独立マイクロサービスの実装
- サービス間通信とAPI設計
- サービスディスカバリと登録メカニズム
- ロードバランシングと高可用性設計
- 集中化されたログ記録とモニタリング機能
まとめ - うさぎも100日間で大成長!
ふぅ、長い道のりでしたね!100日間のAI駆動開発チャレンジをすべて紹介しました。「うさぎにはムリかも...」と思ったかもしれませんが、1日1つずつ取り組んでいけば、必ず成長できるはずです。
このチャレンジを通じて身につくスキルは以下の通りです:
- フロントエンド開発スキル: HTML, CSS, JavaScript, モダンフレームワーク
- バックエンド開発の基礎: サーバーサイド処理、データベース操作
- AI技術活用スキル: 自然言語処理、画像認識、機械学習モデルの活用
- ユーザー体験(UX)設計: 直感的で使いやすいインターフェースの作成
- データ管理と可視化: 効果的なデータの収集、処理、表示
- 大規模アプリケーション設計: スケーラブルで拡張性のあるシステム設計
100日間、毎日コツコツとアプリを作り続けることは、うさぎが100回ジャンプするくらい大変かもしれません。でも、1日1つずつクリアしていけば、気づいたときには驚くほど成長しているはずです!
AIを活用することで、自分一人では難しいと思える課題も乗り越えられるようになります。ChatGPTやGitHub Copilotなどのツールを使って、コードの生成や問題解決のサポートを受けながら進めていきましょう。
さあ、あなたも今日からAI駆動開発100本ノックに挑戦してみませんか?うさぎと一緒に、プログラミングとAIの世界を楽しく学んでいきましょう!
「難しそうに見えても、一歩一歩進めば、うさぎだってゴールにたどり着けるんです!」
Discussion