まず、静的な個人ホームページを作った。ブラウザ上の編集は localStorage 保存だけで、別端末に反映されない状態だったので、そこから「誰でも自分のページを持てるサービス」に方針を切り替えた。
その後、静的サイトを Next.js + Supabase + Vercel 構成のサービスに作り替えた。
次に、プロフィール、記事投稿、公開プロフィールURL、認証、管理画面、通知、フォロー、いいね、コメント、通報、管理者機能、Storage、SEOまで実装した。
僕のページだけは元の個人サイトの雰囲気を残すsignatureテーマも入れた。
次に本番運用の準備。Supabase の schema を適用し、admin ユーザーを作成して権限付与。Vercel にデプロイし、archteia.comを取得して本番ドメインに接続した。
Resendと独自ドメインをつないでCustom SMTPを設定し、Supabaseの確認メールとパスワード再設定メールが本番で送れるようにした。