英語教師のための授業用アプリ開発Tips:バイブコーディング時代の安全な作り方
誰でも簡単にアプリが作れるようになった
OpenAIのCodexなどの進化により、バイブコーディングはますます身近になってきました。英語教師でも、自分の授業や校務で必要なアプリを、自分で形にできる時代になりつつあります。
例えば、次のようなアプリを簡単に作れるようになりました。
- 英作文支援アプリ
- スピーキング練習アプリ
- 語彙テスト作成アプリ
- 授業中の英文共有ツール
- 小テストの採点補助ツール
「こういうものがあったら便利なのに」と思ったものを、自分で作れるようになったことは、大きな変化です。
一方で、学校で使うアプリは、単に「動く」だけでは不十分です。特に、生徒の入力、学習ログ、提出物などを扱う場合には、個人情報保護や自治体・学校のセキュリティポリシーまで考える必要があります。
この記事では、Codexなどを使ってすでにアプリ開発を試したことがある英語教師に向けて、実践的なTipsと注意点をまとめます。
Tip 1. 個人情報を「安全に持つ」より、最初から「持たない」設計にする
個人開発の学校向けアプリで最も重要なのは、個人情報をできるだけ扱わないことです。
どの生徒が何回練習したのか、どんな英文を書いたのか、AIからどんなフィードバックを受けたのかを蓄積できれば、授業改善にも研究にも役立ちます。
しかし、個人情報を扱うとなると、その分、負う責任も大きくなります。
個人情報を取得する場合には、利用目的をできる限り具体的に特定することや、安全管理措置を講じることが求められます。学校で使う場合は、さらに自治体や教育委員会のセキュリティポリシーも関わってきます。
また、生成AIを使う場合には、個人情報やプライバシーに関わる情報を入力しないことも重要です。
このような状況において、個人開発では「個人情報を安全に管理する」よりも、「そもそも個人情報を持たない」仕様にする方が現実的です。
個人開発者が、企業レベルの情報管理体制、監査、委託先管理、インシデント対応、問い合わせ対応を持つのは簡単ではありません。
教師の個人開発アプリでは、「学習ログを全部取る」よりも、「授業に必要な最低限の情報だけ保存する」と割り切る方が安全です。
例えば、英作文支援アプリなら、生徒名を保存せずに英文だけを一時的に保存するといったように設計するだけでも、情報漏洩リスクは大きく下げられます。
学習履歴、成績、個別最適化、長期ログ管理まで行いたい場合は、学校や自治体が契約し、個人情報保護・セキュリティ・サポート体制が整った企業のサービスを使う方がよいでしょう。
Tip 2. データベースを使うと、アプリの可能性は大きく広がる
個人情報を持たない設計を前提にしても、アプリ開発においてデータベースはとても便利です。
英語教師が作るアプリでも、データベースを使えるようになると、一気にできることが増えます。
例えば、データベースを使うと、次のようなことができます。
- 生徒の提出内容を一時保存する
- 教師用の管理ページを作る
- 課題コードやお題を管理する
- クラス全体の回答傾向を確認する
- アプリの設定を保存する
データベースを活用する際は、個人情報は保持せずにアプリの使い勝手を上げるために使う、という考え方が重要です。「便利だから全部保存する」のではなく、「授業に必要な最低限だけ保存する」という発想が大切です。
例えば、次のようなデータであれば、個人開発のアプリでも比較的扱いやすいです。
| 保存するデータ | 使い所 | 注意点 |
|---|---|---|
| 課題コード | 生徒が同じ課題にアクセスする | 個人名と結びつけない |
| お題 | 英作文や会話練習のテーマを管理する | 公開範囲に注意する |
| 匿名の英文 | 授業中に共有・比較する | 個人名や固有情報が入らないようにする |
| アプリ設定 | 表示内容やルーブリックを保存する | 教師だけが編集できるようにする |
代表的なデータベースサービスであるSupabaseは、PostgreSQLベースのデータベース、認証、ストレージ、Edge Functionsなどをまとめて使えるサービスです。個人開発でも扱いやすく、英語教師が小さな授業用アプリを作る場合にも相性がよい選択肢です。
SupabaseのFree planには、記事執筆時点で次のような無料枠があります。
| 項目 | Free planの目安 | アプリでの使いどころ | 注意点 |
|---|---|---|---|
| データベース容量 | 500MB | お題、ルーブリック、匿名投稿、設定保存 | 大量の学習ログ保存には不向き |
| API requests | Unlimited | フロントエンドから教材データを読む | RLS設定なしで公開しない |
| Egress (Supabaseからユーザーや外部サービスへ送られるデータ通信量) | 5GB | テキスト中心のアプリなら十分 | 画像・音声配信には少ない |
| Storage | 1GB | 画像少量、教材ファイル少量 | 生徒の写真・音声保存は避ける |
| Edge Functions (AI呼び出しなどをSupabase側で実行するための小さなサーバー機能) | 500,000回/月 | サーバー側処理をする | 秘密情報の取り扱いに注意 |
| Realtime (DBの変更を画面に即時反映するための通知機能) | 200同時接続・200万メッセージ程度 | 生徒の提出状況を教員画面で確認 | 常時チャット用途には慎重に使う |
Tip 3. AI APIは「学習に使われるか」を必ず確認する
生成AIのAPIを使うときは、料金やモデル性能だけでなく、入力・出力が学習や製品改善に使われるかを必ず確認する必要があります。
特に学校で使うアプリでは、生徒の英文、音声、感想、学習履歴などが入力される可能性があります。これらは、単なるテキストではなく、教育データとして慎重に扱う必要があります。
ここで重要なのは、「有名なAIサービスだから大丈夫」と考えないことです。
サービスごとに、データの扱いは異なります。さらに、同じサービスでも、次のような違いがあります。
- 無料枠
- 有料API
- 個人向けプラン
- 法人向けプラン
- 教育機関向けプラン
学校で使う場合は、特に次の点を確認する必要があります。
| 確認すること | 見るべきポイント |
| 入力データが学習に使われるか | モデル改善・製品改善への利用の有無 |
| 人間のレビュアーが見る可能性があるか | レビュー対象になるデータの範囲 |
| データ保持期間 | 入力・出力がどのくらい保存されるか |
| オプトアウト設定 | 学習利用を停止できるか |
| 無料枠と有料枠の違い | データ利用条件が変わるか |
| 生徒利用の可否 | 年齢制限や教育利用の条件 |
AI APIを選ぶときは、「性能が高いか」だけでなく、これらの点を必ず確認した上で判断をする必要があります。
Tip 4. Google AI Studioの無料APIは便利だが、生徒情報を扱うアプリには使わない
Google AI Studio / Gemini APIには無料枠があります。プロトタイプを作るには非常に便利です。ただし、学校で生徒の情報を扱うアプリにそのまま使うのは避けるべきです。
GoogleのGemini API Additional Terms of Serviceでは、Google AI StudioやGemini APIの unpaid quota について、入力内容や生成された応答がGoogleの製品・サービス・機械学習技術の改善に使われると説明されています。また、人間のレビュアーが入力・出力を確認する場合があるため、機密情報、個人情報、センシティブな情報を送信しないよう明記されています。
一方、同じ規約では課金した場合は、プロンプトや応答はGoogleの製品改善には使われないと説明されています。したがって、授業用アプリで生徒の英文や学習データを扱う可能性がある場合、無料枠を本番利用するのは避けるべきです。
無料APIは、次のような用途に限定すべきです。
- 生徒情報を含まないサンプルで動作確認する
- 先生が自分の教材案を作る
- ダミーデータでプロトタイプを試す
- 公開前に機能を検証する
無料APIは、あくまでも「先生が自分の教材案を作る」「ダミーデータでプロトタイプを試す」「公開前の機能検証をする」ためのものと割り切るようにしましょう。
なお、Gemini API Additional Terms of Serviceでは、利用者の年齢要件として、18歳未満がアクセスする可能性のあるアプリへの利用制限も示されています。そのため、無料枠か有料枠かに関わらず、生徒が使用する想定のアプリでは使用できません。
Tip 5. GPTsと自作アプリを連携させるという選択肢もある
AI APIを直接使う以外に、ChatGPTのGPTsを活用する方法もあります。
GPTsは、特定の目的に合わせて作れるカスタムChatGPTです。英作文支援、会話練習、語彙テスト作成、探究学習支援など、英語教育の目的に合わせて設計できます。
さらに、GPTsでは「GPT Actions」を使って外部APIと連携できます。これを使うと、自作アプリのAPIをGPTsから呼び出すことができます。
例えば、次のような構成が可能です。
GPTs上で生徒はAIから添削・フィードバックを受ける
GPTsからGPT Actionsで自作アプリと通信して、必要なデータ(英文、AIからのフィードバック等)を送信する
教師は自作アプリで生徒が取り組んでいるGPTsから送られてくるデータを確認する
この構成のメリットは、AIとの対話部分をGPTsに任せ、自作アプリ側では「整理する」「共有する」「表示する」部分だけを担当できることです。
直接AI APIを大量に呼び出さなくてよいので、API料金を抑えられる可能性もあります。
この構成のメリットは、AIとの対話部分をGPTsに任せ、自作アプリ側では「整理する」「共有する」「表示する」部分だけを担えることです。直接AI APIを大量に呼び出さなくてよいので、API料金を抑えられる可能性があります。
ただし、GPTsを使う場合でも、ChatGPTの利用条件、学校の利用ルール、生徒の年齢、アカウント管理、入力データの扱いは確認が必要です。また、GPT Actionsで自作アプリにデータを送る場合も、送信するデータは匿名化・最小化するべきです。
匿名の活動ID
個人を特定できない英文
名前なしの短文
生徒名
出席番号
メールアドレス
成績・評価
Tip 6. 機能を増やしすぎない
個人開発アプリでやりがちなのが、機能を増やしすぎることです。作っている側は、つい「これもできたら便利」「この機能もいつか使うかもしれない」と考えます。
しかし、使う側の先生や生徒にとっては、機能が多いほど最初のハードルが上がります。
特に、学年で他の教員と同じアプリを使用するという場合は、とにかくシンプルなUIにするのがおすすめです。
Tip 7. 「AIっぽいデザイン」を避けるには、UIテンプレートを先に決める
Codexや生成AIでアプリを作ると、どうしても似たような見た目になりがちです。
「AIっぽいデザイン」を避ける一番簡単な方法は、最初にデザインの型を決めてからCodexに実装させることです。
そこで便利なのが、getdesign.mdというサイトです。
getdesign.mdでは、さまざまなWebサイトのデザイン方針をDESIGN.mdというMarkdown形式で見ることができます。DESIGN.mdには、色、フォント、余白、コンポーネント、ボタン、カード、レイアウトなど、そのサイトらしい見た目を再現するための情報が整理されています。
DESIGN.mdは、AIコーディングエージェントにデザインの方向性を伝えるための設計書のようなものです。スクリーンショットを見せて「こんな感じにして」と頼むよりも、色・余白・文字サイズ・コンポーネントのルールをテキストで渡せるので、CodexやClaude Codeなどに指示しやすくなります。
使い方はシンプルです。
1. getdesign.mdで参考にしたいデザインを選ぶ
2. そのDESIGN.mdの内容をコピーする
3. 自分のプロジェクトにDESIGN.mdとして保存する
4. Codexに「このDESIGN.mdを参考にしてUIを作って」と指示する
5. 学校・授業用アプリに合うように色、文言、ボタン数を調整する
たとえば、英語授業用アプリを作る場合は、派手なデザインよりも、落ち着いていて、余白が広く、操作の優先順位がわかりやすいデザインを参考にするとよいです。
大事なのは、AIに「いい感じにして」と頼むのではなく、「このデザイン方針を参考にして」と具体的な基準を渡すことです。
Tip 8. 公開前チェックリストを作る
最後に、アプリを公開・配布する前に、最低限、次のチェックを行うとよいです。
| チェック項目 | 確認 |
| 生徒の氏名を保存していない | □ |
| メールアドレスを保存していない | □ |
| 出席番号を保存していない | □ |
| AI APIキーがフロントエンドに出ていない | □ |
| SupabaseのRLSを有効にしている | □ |
| Supabaseのservice_role keyを公開していない | □ |
| 無料AI APIに生徒情報を送っていない | □ |
| 生成AIサービスのデータ利用条件を確認した | □ |
| 自治体・学校のセキュリティポリシーに反していない | □ |
| 不要なデータを削除できる | □ |
| 生徒用画面に余計な機能が出ていない | □ |
教員のアプリ開発は、できることを増やすよりも、責任を持てる範囲内に収めることが大切です。
アプリが目指すべきなのは「高機能なアプリ」よりも、「安全で、軽くて、授業中に迷わず使える小さな教具」ぐらいの存在です。
CodexやGPTs、Supabase、AI APIを組み合わせれば、英語教師でもかなり実用的なアプリを作れます。ただし、授業で使う以上、技術的に作れるかどうかだけでなく、何を保存しないか、何をAIに送らないか、どこまでを個人開発でやるかを決める必要があります。
英語教師がアプリを作る時代だからこそ、「つくる力」と同じくらい、「つくりすぎない判断」が重要になってきます。
参考文献・参照資料
- 文部科学省. 初等中等教育段階における生成AIの利活用に関するガイドライン(Ver.2.0)
- 文部科学省. 教育情報セキュリティポリシーに関するガイドライン
- 個人情報保護委員会. 個人情報の保護に関する法律についてのガイドライン(通則編)
- Google AI for Developers. Gemini API Additional Terms of Service
- Google AI for Developers. Gemini Developer API pricing
- Google AI for Developers. Rate limits
- OpenAI. Business data privacy, security, and compliance
- OpenAI Platform. Data controls in the OpenAI platform
- OpenAI Help Center. Creating and editing GPTs
- OpenAI Developers. GPT Actions
- Supabase. Pricing & Fees
- Supabase Docs. Edge Functions pricing
なお、本記事の内容は2026年5月時点の各サービスの公開情報に基づくものです。AI API、クラウドサービス、教育機関向け利用条件、無料枠、年齢要件、データ利用条件は変更される可能性があるため、実際に授業や校務で使う前には、必ず各サービスの最新の公式情報と、所属自治体・学校のルールを確認してください。
