Claude Codeでサイトをつくってみた
タイ旅行で「自分のメディアを持ちたい」と思い立ち、AI と一緒にサイトを作った全記録です。
【第13回】AI にゲームは作れる。でも「手触り」は作れない — LLM に欠けた game feel を Bevy 製大富豪で埋めた記録
「正しく動くのに手触りが死んでいる」——AI が書くゲームに欠けがちな game feel を、Rust/Bevy(WASM) 製の対戦大富豪で実装した記録。ヒットストップの時計設計、スクリーンシェイク、WASM 公開の落とし穴まで、LLM が黙っていた実測値と設計判断。
【第14回】Bevy 入門:AI が書けない「今の書き方」で最小ゲームを動かす
AI に Bevy を頼むと SpriteBundle など古い API を吐く——Bevy 0.19 で実際に動く最小 ECS 構成と、AI が間違える「今の書き方」早見表。Rust ゲームエンジン入門。
【第15回】Bevy 製ゲームをブラウザで公開するまで — Rust/WASM 実配信ガイド
cargo build だけでは足りない。Bevy のゲームを wasm32 でビルドしてブラウザ配信するまでの実手順と詰まりどころ——webgl2・getrandom・audio autoplay・GitHub Pages まで。
【第12回】ガス代ゼロで寄付できる募金箱——JPYCが3つある事件と、ウォレットに詐欺扱いされた話
「JPYCしか持っていない人が、署名だけで寄付できる」募金箱ウィジェットを本番投入した実録。EIP-3009のガスレス寄付、本番で連発した事件(JPYC三世代問題・MetaMaskの詐欺警告・ウォレットの取り合い・ブリッジの流動性の罠)と、その場で直して再デプロイし続けた記録です。
【第11回】SEO と SNS 自動投稿——作ったものを見つけてもらう仕組み
canonical URL、サイトマップ、OG画像、JSON-LD、postbuild チェッカー。そして Bluesky と X の自動投稿。サイトを「見つけてもらう」ために何をやったか、開発担当 Claude Code に聞いた
【第10回】記事も AI に書かせてみた——ネタ探しからインタビュー形式に至るまで
Obsidian のセマンティック検索でネタを探し、チャットログからドラフトを切り出し、ralph-loop で記事を自動生成する。試行錯誤の末にたどり着いた「インタビュー形式」の理由を、開発担当 Claude Code に聞いた
【第9回】毎朝 Discord に届くアクセス数:API と cron の自動通知
Cloudflare と YouTube の API からアクセス数を取得し、cron で毎朝 Discord に通知する仕組みを作った話
【第8回】ComfyUI で挿絵を作る:NanoBanana Pro からの移行
画像生成サービスからローカル ComfyUI へ移行し、Claude Code がワークフロー JSON を生成する仕組みを作った話
【第5回】Ralph Loop の独自発展:bash から Python へ
bash スクリプトの限界を超えて、TOML 設定・スコアリング・複数プロバイダ対応の Python ツールに書き直した話
【第4回】Ralph Wiggum Loop でコンテンツを作る
build が通ってもコンテンツの品質は保証されない。AI がコンテンツを生成するときに必要だった独自の検証要件の話
【第3回】Ralph Wiggum Loop でサイトを自動構築する
bash スクリプトと Claude Code で Next.js のサイト構造を自動構築した記録。build/test/lint が通るまでループする仕組み
【第7回】GPTs をつくる:ペルソナとフォーマットの試行錯誤
ブッダイズム。のお悩み相談 GPTs を作るために、ペルソナ設定とワークフロー設計で何度もやり直した記録
【第6回】サイトの見た目がどうにもパッとしなかったので、AI に3案出してもらって統合した話
Claude Code の /frontend-design スキルで3つのデザイン案を生成し、いいとこ取りして最終デザインに仕上げたプロセスの記録
【第2回】Claude Code の開発環境をつくる:WSL から Docker へ
WSL の systemd 問題で何度も環境が壊れた末に、Docker コンテナで開発環境を構築した話
【第1回】タイ旅行から始まった:やってみよう、でサイトを作る
旅先で思いついたコンセプトを、Next.js と GPTs で形にすることにした。シリーズ「Claude Codeでサイトをつくってみた」の導入