AI・機械学習

速報!娘のひと言から生まれた広告なし子ども向けお絵かきPWAをGoogle AI Studioで作った話

「パパ、またCMが来た…」

お子さんがいる方なら、この状況、わかりますよね。無料のお絵かきアプリを使っていたら、数分おきに広告が割り込んでくる。しかも全画面で、スキップできない。子どもの集中力がバッサリ切られてしまう、あの感じ。

海外のある開発者がこんなエピソードをシェアして、いま話題になっています。娘さんに「自分たちでアプリを作ろうよ」と言われた彼は、Google AI Studioを使って広告ゼロのお絵かきPWAをゼロから構築。その体験記がdev.toで大きな反響を呼んでいます。

🎨 PWAって何?ざっくり説明します

kids drawing app
kids drawing app / Photo by Ariel Paredes via Pexels

PWA(Progressive Web App)とは、Webサイトなのにアプリのように動くしくみのことです。インストール不要、App Storeも不要。ブラウザからアクセスするだけで、ホーム画面に追加してオフラインでも使えます。

今回のケースでいうと、こんなメリットがあります:

  • ✅ 広告を一切入れずに済む(自作だから!)
  • ✅ iPadのホーム画面にアイコンを置ける
  • ✅ インターネットなしでも動く
  • ✅ App Storeの審査なしでデプロイできる

🤖 Google AI Studioをどう活用したの?

Google AI Studioは、GeminiモデルをブラウザからすぐにAPIで試せるGoogleの開発者向けツールです。コードを書く補助として使われていて、今回のプロジェクトでもHTML・CSS・JavaScriptのコア部分をAIと対話しながら生成していったそうです。

「むずかしそう」を「できそう」に変えてくれるのが、まさにこういったAI活用の醍醐味ですよね。

💻 お絵かきPWAの核心部分:Canvas APIのコード例

お絵かきアプリの中心はブラウザのCanvas APIです。ポイントをまとめるとこんな感じです:

  • mousedown で描画開始
  • mousemove で線を引き続ける
  • mouseup で描画終了
<!-- index.html -->
<canvas id="drawCanvas" width="800" height="600"></canvas>

<script>
const canvas = document.getElementById('drawCanvas');
const ctx = canvas.getContext('2d');
let isDrawing = false;

// 描画開始
canvas.addEventListener('mousedown', (e) => {
  isDrawing = true;
  ctx.beginPath();
  ctx.moveTo(e.offsetX, e.offsetY);
});

// 線を引く
canvas.addEventListener('mousemove', (e) => {
  if (!isDrawing) return;
  ctx.lineTo(e.offsetX, e.offsetY);
  ctx.strokeStyle = '#FF69B4'; // 子ども向けにピンク!
  ctx.lineWidth = 5;
  ctx.lineCap = 'round';       // 線の端を丸くしてやさしい印象に
  ctx.stroke();
});

// 描画終了
canvas.addEventListener('mouseup', () => {
  isDrawing = false;
});
</script>

これにPWA化に必要な manifest.jsonservice-worker.js を追加すれば、ホーム画面に置けるアプリの完成です。AIに「子ども向けのUIにして」と指示するだけで、色のチョイスやボタンサイズまで提案してもらえるのが今っぽいですよね。

📌 まとめ


今回のポイントを振り返ってみましょう。

  • PWAを使えば、App Store不要・広告なしのアプリが自作できる
  • Google AI Studioはコード生成の壁を下げる強力な相棒になる
  • Canvas APIの基本は意外とシンプルで、初心者でも手が届く

「自分のアプリを作れた!」という体験は、子どもにとっても大人にとっても最高のワクワクですよね。ぜひ週末のちょっとした時間に試してみてください 🖌️

📚 関連商品・おすすめ書籍

スッキリわかるPython入門 第2版 (スッキリわかる入門シリーズ)

もしも

スッキリわかるPython入門 第2版 (スッキリわかる入門シリーズ)

初心者に定番のPython入門書

Amazonで見る

実践Claude Code入門―現場で活用するためのAIコーディングの思考法

もしも

実践Claude Code入門―現場で活用するためのAIコーディングの思考法

AIコーディングの現場活用法を学ぶ一冊

Amazonで見る

Python Web開発実践入門 ―― FastAPIによるWebAPI開発と非同期処理

もしも

Python Web開発実践入門 ―― FastAPIによるWebAPI開発と非同期処理

FastAPIでWebAPI開発を実践的に学ぶ

Amazonで見る

※本記事にはアフィリエイトリンクが含まれます。

ABOUT ME
やまちゃん
これまで学生と社会人を合わせて5000人以上にプログラミング学習を指導。 ゼロからイチをわかりやすく解説する専門家として活動しており、本業ではArduinoを用いたIoT開発とロボットプログラミングが専門。 Pythonを用いたアプリ開発、ウェブアプリケーションの開発で業務の効率化をサポートしています。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です