はじめまして。
この度AI駆動開発で全人類強制お嬢さま化SNS「OJYO」を作ってみましたので、開発してみて大変だったこと、楽しかったことをアプリの宣伝がてら書いてみたいと思います。
AI駆動開発ってどうなの?って人やアプリを作ってみたい人に少しでも参考になれば嬉しいです。
1.どんなSNS?
その名のとおり、すべての投稿がお嬢様言葉に変換されるコンセプト型SNSです。
例えば、「こんにちは」と投稿すると「ごきげんよう」、「不細工」と投稿すると「愛らしいお顔」のように強制変換して投稿されるというものです。
変換はchatGPTのapiを使用していますが、変換がうまくいったりいかなかったり、結構ブレ幅は大きいです。
なお、過激な表現の場合、短歌が詠まれるようにプロンプトを設定しています。
2.Bolt.newの使い勝手
①良い点
・環境構築が爆速(NetlifyやSupabaseが知識なくてすぐ使える)
・エラーをワンボタンで修正してくれる
・フレームワークを選択できる
・最適なセキュリティ施策を講じてくれる
②悪い点
・良いコードも修正してしまう(一度指示したことすぐに忘れる)
・外部サービスなどの連携は弱い
・ページを複数にまたがる処理は弱い
・エラー修正を繰り返すとホワイトスクリーンになったり、レイアウト崩壊が起こる
・アセット(ファイル)をBolt.newで保存できないため、URLなどから取得する必要がある。
・トークンの制約から中規模~大規模の開発には圧倒的に不向き(途中からトークン消費量が跳ね上がる)
・iosへのデプロイはできないため、app storeへの掲載はmacが必要
・NetlifyでカスタムドメインでデプロイしてもまれにNetlifyのドメインへデプロイされる(キャッシュの影響?)
③詰まった点
というより時間がかかった点ですが、最適なセキュリティ施策を講じようとしてくれる一方、それが原因でエラーを吐きまくる点です。なので、明示的に「RLSセキュリティは外して。EdgeFunctionは使わないで」という命令を行ってから実装しないと延々とエラーを吐き続けますし、まったく関係ない修正指示をしても、すぐにセキュリティ施策を講じようとしてエラーとなります。
(気を抜くと大量のmigrationsファイルが生成される(中身は全部一緒))
ざっと、書くとこんな感じですが、使用感は非常に良かったです。日本語入力も対応しているのですんなりコードを吐いてくれます。
ちなみに、エラーの解決方法について、chatGPTにも同じ質問してみましたが、chatGPTより劣るということはありませんでした。ただ、たまに初歩的なミス(括弧とかピリオドがない等)とかはしてくれます笑
個人的にはbolt.newで基盤を構築し、ある程度開発が終わったらCursorで編集するのがベストの運用方法なのかな~という印象です。自分の場合はバックエンドの知識がまったくなかったのですが、それでもなんとかできました。
3.ゼロからの開発は可能か?
これは可能だと思います。自分もほぼゼロからの開発でしたが、なんとか完成までもっていくことができました。
ただ、プロジェクトが大きくなって複数の処理にまたがると、どうしてもエラーとなりやすいため、知識がないと進まない場面が出てくるのは確かです(自分の場合は知人にSOSを頼みました)。
以上が簡単ですが、AI駆動開発で開発からアプリリリースまでやってみた感想です。
だいたい開発期間は4か月ほどでした。
というわけでご興味があればアプリを使ってみてください。
(といってもsupabaseのミニマムプランなので接続数が多くなると死にます笑)
App store
https://apps.apple.com/us/app/ojyo/id6744646272