> ## Documentation Index
> Fetch the complete documentation index at: https://supastack.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For the full documentation corpus in one file, fetch: https://supastack.dev/llms-full.txt

# SEO と共有

メタデータ、サイトマップ、robots、ソーシャル画像。

## 始める前に

[ファイル] → [フォルダーを開く] を使用して、Visual Studio Code でダウンロードした supastack プロジェクトを開き、[ターミナル] → [新しいターミナル] を選択します。リポジトリ ルートは、package.json、アプリ、およびパッケージを含むフォルダーです。そこで以下のコマンドを実行し、ターミナルを開いたままにしておきます。コマンドが認識されない場合は、続行する前にツールのインストール ガイドを完了してください。

まずプラットフォームのチュートリアルをお読みください。サーバーは、ブラウザまたは電話のリクエストに応答するアプリ プロセスです。 Web は apps/web/.env.local を読み取り、Expo は apps/mobile/.env.local を読み取り、データベース移行コマンドは root .env を読み取ります。データベースなしの /dashboard デモは、Postgres の移行が必要な実際の /auth アカウントとは別のものです。電話またはデスクトップのみのチェックアウトには、別途実行される Web バックエンドが必要です。

[ツールをインストールしてコードを取得](https://supastack.dev/ja/docs/web/before-you-start.md)

[コマンド、ファイル、設定を学ぶ](https://supastack.dev/ja/docs/web/terminal-basics.md)

[Web の初回実行チュートリアルを完了する](https://supastack.dev/ja/docs/web/ship-in-5-minutes.md)

```
corepack pnpm --filter @supastack/web dev
```


## インストールとセットアップ

ルート単位のメタデータは Next.js の metadata API から来ます——ページは metadata オブジェクトか generateMetadata をエクスポートし、タイトルと説明をロケール辞書から解決するため検索結果もローカライズされたままです。

sitemap.ts と robots.ts がクロール可能な面を生成し、Open Graph 画像とアイコンアセットがソーシャルプレビューを担います。settings・billing・admin・API などのプライベートルートはサイトマップから外し、robots で disallow してください。

```
app/sitemap.ts    public routes only
app/robots.ts     disallow private surfaces

// per page
export const metadata = { title, description };
```


## 実装ワークフロー

すべての公開ページに一意のタイトルと説明を付け、検索結果・フィルタ済みビュー・認証面を決してインデックスさせないでください。正規 URL はプレフィックスなしのままです——ロケール層が既定ロケールを正規パスへリダイレクトします。

公開ルートを追加したら、同じ変更でサイトマップにも追加してください。OG 画像は焼き付けたスクリーンショットではなくブランドトークンで保ち、リスタイルの一貫性を保ちます。


## 検証とトラブルシューティング

プレビューデプロイで /robots.txt と /sitemap.xml を取得し、サイトマップがパースできることを検証し、1ページを共有チェックします——タイトル、説明、画像。検索結果ページに noindex ヘッダーまたは meta があることを確認してください。


## 次へ

[製品テーマ](https://supastack.dev/ja/docs/web/theming.md)
