# gt-react: General Translation React SDK: SPA 開発時の翻訳
URL: https://generaltranslation.com/ja/docs/react/tutorials/spa-development-translations.mdx
---
title: SPA 開発時の翻訳
description: シングルページ React アプリの開発中に、翻訳がライブで更新される様子を確認できます
---
開発時の翻訳を使うと、SPA の編集中に翻訳済みコンテンツをプレビューできます。これには、GT コンパイラと開発用 API キーが必要です。
**前提条件:**
* [SPA クイックスタート](/docs/react/tutorials/quickstart-spa) で設定したシングルページ React アプリ
* `gtx-dev-` で始まる開発用 API キー
## ステップ 1: コンパイラをインストールする
`@generaltranslation/compiler` を開発依存関係としてインストールします。
```bash
npm i -D @generaltranslation/compiler
```
```bash
yarn add --dev @generaltranslation/compiler
```
```bash
bun add --dev @generaltranslation/compiler
```
```bash
pnpm add --save-dev @generaltranslation/compiler
```
## ステップ2: コンパイラプラグインを追加する
使用しているバンドラー用のプラグインを追加します。Vite の場合:
```ts title="vite.config.ts"
import react from '@vitejs/plugin-react';
import { vite as gtCompiler } from '@generaltranslation/compiler'; // [!code highlight]
import { defineConfig } from 'vite';
import gtConfig from './gt.config.json'; // [!code highlight]
export default defineConfig({
plugins: [gtCompiler({ ...gtConfig }), react()], // [!code highlight]
});
```
`@generaltranslation/compiler` は、`webpack`、`rollup`、`esbuild` 用のプラグインもエクスポートしています。使用しているバンドラーに対応するプラグインをインポートしてください。
```ts
import { webpack as gtCompiler } from '@generaltranslation/compiler';
```
## ステップ 3: 開発用の認証情報を追加する
開発用APIキーは、[dash.generaltranslation.com](https://dash.generaltranslation.com/signup) で取得するか、次を実行して取得できます。
```bash
npx gt auth
```
次に、`.env.local` に project ID と開発用 API Key を追加します:
```bash title=".env.local"
VITE_GT_PROJECT_ID="your-project-id"
VITE_GT_DEV_API_KEY="your-dev-api-key"
```
`gt-react` は初期化時にこれらの値を自動的に読み込みます。
**開発環境のみ:** `gtx-dev-` で始まるキーを使用してください。`gtx-api-` で始まる本番用キーは、ブラウザコード内に絶対に公開しないでください。
## ステップ 4: 開発を始める
開発サーバーを起動し、デフォルトロケール以外のロケールに切り替えます。翻訳対象のコンテンツを編集すると、コンパイラ がその変更を検知し、`gt-react` が更新された開発用翻訳をリクエストします。
## 次のステップ
* [SPA クイックスタート](/docs/react/tutorials/quickstart-spa) - SPA のセットアップ全体を確認する
* [Compiler](/docs/react/concepts/compiler) - コンパイラ の検証と自動 JSX injection について学ぶ
* [Production vs Development](/docs/react/concepts/environments) - 環境によって翻訳動作がどのように変わるかを理解する