
目次

第1回で書いた通り、最初は「Newt」と「Cloudflare Pages」という組み合わせで進める予定でした。
しかし、実際に登録作業を始めてみると、2つの問題に直面しました。
まず、記事管理に使う予定だったNewtが、2026年11月24日にサービスを終了することが発表されていました。
これから長く運用していくブログの土台に、終了が決まっているサービスを使うわけにはいきません。
別のサービスを探す必要がありました。
もう一つは、サイトの公開場所として予定していたCloudflare Pagesです。
ClaudeやPerplexityから事前に得ていた情報と、実際の登録画面が大きく食い違っていました。
サービスの仕様や料金体系が変更されていて、当初想定していたようなスムーズな導入ができない状態でした。
どちらも、実際に手を動かしてみるまで気づけなかった問題です。
AIから得た情報だけで計画を立てていたので、その情報が現状と合っていなければ、計画ごと見直すしかありませんでした。

Newtの代替として、ClaudeとPerplexityの両方から提案されたのが「Sanity(サニティ)」というサービスでした。
名前すら聞いたことがなかったので、まず「そもそも何なのか」「信頼できるのか」を確認するところから始めました。
調べてみると、Sanityは世界的に多くの開発者や企業に使われているCMSで、Newtのように突然サービスが終了するリスクが低いことがわかりました。
加えて、記事のタイトルや本文、カテゴリといったデータを「部品」として保存する仕組みになっていて、将来ブログのデザインを変えたくなっても、データをそのまま再利用できるという特徴がありました。
管理画面も自分の用途に合わせてカスタマイズできるため、たとえば「この記事の満足度」のような独自の項目を追加することもできます。
Sanityにはもう一つ、「GROQ(グロック)」という専用のデータ取得方法がありました。
これは、保存されたデータの中から必要なものだけをピンポイントで取り出す仕組みです。
たとえば「AIカテゴリの記事を、新しい順に3件だけ、タイトルと日付だけ取得する」という細かな指定ができます。必要なデータだけを取得することで、サイトの表示速度にも影響しにくくなります。
設定画面が英語であることや、初期設定にプログラミングの知識が必要な点はありましたが、わからない部分はClaudeやPerplexityに聞けばいいと考えていたので、選ばない理由にはなりませんでした。
英語であることよりも、長く安心して使い続けられることを優先して導入を決めました。

サイトの公開場所についても、Cloudflareを諦めて「Vercel(バーセル)」に切り替えました。
もともとVercelを候補から外していたのは、無料プラン(Hobbyプラン)ではアフィリエイトなどの商用利用が規約で禁止されているからです。
将来的に収益化できたらいいなと考えていたので、その制約のないCloudflareを第一候補にしていました。
しかし、Cloudflareの登録作業がまったく進まず、開発が止まってしまいました。
そこでClaudeから「Next.jsの開発元であるVercelを使えば、設定の手間がほぼなく、最も確実に公開できます」と提案を受けました。
ここで考え方を切り替えました。
今の段階でアフィリエイトができるかどうかにこだわるよりも、まずはVercelで確実にサイトを形にする。
収益化が現実的になった段階で有料プランに移行すればいい。
完成していないサイトでは、そもそも収益化もなにもありません。
まず動くものを作ることを優先しました。
振り返ると、今回の構成変更は「AIの情報が、今この瞬間のサービス状況と一致しているとは限らない」という事実を、実際に手を動かして初めて実感した経験でした。
ClaudeもPerplexityも、質問すれば具体的で説得力のある回答を返してくれます。
でも、その情報がいつ時点のものかはわかりません。
Newtのサービス終了も、Cloudflareの仕様変更も、自分で公式サイトを見に行くまで気づけませんでした。
もしこれからAIを使って開発を進める中で、画面が説明と違っていたり、登録がうまく進まなかったりしたときは、一度そのサービスの公式のお知らせや料金ページを直接確認してみてください。
当たり前のことに聞こえるかもしれませんが、AIの回答だけで判断せず、一次情報を自分の目で見る。
これだけで、僕のようにサービス終了間近のツールを選んでしまうリスクは避けられるはずです。
こうして決まった「Sanity × Vercel」という構成で、ようやく開発が本格的に動き出しました。
次回は、この構成をもとに実際の画面レイアウトをどう組み立てていったかについて記録します。