For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /ja/docs/tanstack/seo.md (or send Accept: text/markdown).
SEO と共有
メタデータ、サイトマップ、robots、ソーシャル画像。
始める前に
[ファイル] → [フォルダーを開く] を使用して、Visual Studio Code でダウンロードした supastack プロジェクトを開き、[ターミナル] → [新しいターミナル] を選択します。リポジトリ ルートは、package.json、アプリ、およびパッケージを含むフォルダーです。そこで以下のコマンドを実行し、ターミナルを開いたままにしておきます。コマンドが認識されない場合は、続行する前にツールのインストール ガイドを完了してください。
まずプラットフォームのチュートリアルをお読みください。サーバーは、ブラウザまたは電話のリクエストに応答するアプリ プロセスです。 Web は apps/web-tanstack/.env.local を読み取り、Expo は apps/mobile/.env.local を読み取り、データベース移行コマンドは root .env を読み取ります。データベースなしの /dashboard デモは、Postgres の移行が必要な実際の /auth アカウントとは別のものです。電話またはデスクトップのみのチェックアウトには、別途実行される Web バックエンドが必要です。
corepack pnpm --filter @supastack/web-tanstack devインストールとセットアップ
ルート単位のメタデータは共有ページモジュールから来ます——各 packages/web-core/src/pages/<route>/page.load.ts が metadata をエクスポートし、そのファイルルートが metadataToHead 経由で head() に載せ、タイトルと説明をロケール辞書から解決するため検索結果もローカライズされたままです。
src/routes/sitemap[.]xml.ts と src/routes/robots[.]txt.ts ルートがクロール可能な面を生成し、ラスタライズされた OG 画像(src/framework/og.ts)とアイコンアセットがソーシャルプレビューを担います。settings・billing・admin・API などのプライベートルートはサイトマップから外し、robots で disallow してください。
src/routes/sitemap[.]xml.ts public routes only
src/routes/robots[.]txt.ts disallow private surfaces
// per page — packages/web-core/src/pages/<route>/page.load.ts,
// surfaced through the route's head() via metadataToHead
export const metadata = { title, description };実装ワークフロー
すべての公開ページに一意のタイトルと説明を付け、検索結果・フィルタ済みビュー・認証面を決してインデックスさせないでください。正規 URL はプレフィックスなしのままです——ロケール層が既定ロケールを正規パスへリダイレクトします。
公開ルートを追加したら、同じ変更でサイトマップにも追加してください。OG 画像は焼き付けたスクリーンショットではなくブランドトークンで保ち、リスタイルの一貫性を保ちます。
検証とトラブルシューティング
プレビューデプロイで /robots.txt と /sitemap.xml を取得し、サイトマップがパースできることを検証し、1ページを共有チェックします——タイトル、説明、画像。検索結果ページに noindex ヘッダーまたは meta があることを確認してください。