# General Translation React SDKs (gt-react, gt-next, gt-react-native): Salvare le traduzioni localmente
URL: https://generaltranslation.com/it/docs/react/guides/storing-translations.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Come includere localmente nel bundle le traduzioni di General Translation invece di caricarle dalla CDN.

Per impostazione predefinita, General Translation carica le traduzioni dalla propria CDN a runtime. In alternativa, puoi generare file di traduzione, includerli nel bundle della tua app e caricarli direttamente. In questo modo elimini la dipendenza dalla CDN a runtime, ma per aggiornare le traduzioni dovrai effettuare un nuovo deploy.

## Configura un percorso di output locale [#configure]

In `gt.config.json`, imposta il percorso di output del file `gt` su un percorso nel codice sorgente, usando il segnaposto `[locale]`. Questo vale per tutti i framework.

```json title="gt.config.json"
{
  "defaultLocale": "en",
  "locales": ["es", "fr"],
  "files": { "gt": { "output": "src/_gt/[locale].json" } }
}
```

## Genera i file [#generate]

Esegui la CLI per tradurre i contenuti e salvare un file per ogni impostazione regionale in quel percorso.

```bash
npx gt translate
```

Aggiungilo al processo di build, così i file restano aggiornati — per esempio, `"build": "npx gt translate && vite build"` (oppure `next build`, `expo export` e così via).

## Caricale nella tua app [#load]

Fornisci un callback [`loadTranslations`](/docs/react/reference/functions/load-translations) che importi il file per una determinata impostazione regionale. Il modo in cui lo registri dipende dal framework.

<Tabs items={['React', 'Next.js', 'TanStack Start', 'React Native']}>
  <Tab value="React">
    Passa [`loadTranslations`](/docs/react/reference/functions/load-translations) alla chiamata di inizializzazione.

    ```tsx title="src/routes/root.tsx"
    import { initializeGT } from 'gt-react';
    import gtConfig from '../../gt.config.json';

    const loadTranslations = (locale: string) =>
      import(`../_gt/${locale}.json`).then((m) => m.default);

    initializeGT({ ...gtConfig, loadTranslations });
    ```
  </Tab>

  <Tab value="Next.js">
    Crea un file `loadTranslations.ts` nella radice del progetto. Il plugin [`withGTConfig`](/docs/react/nextjs/config) lo rileva automaticamente, oppure puoi impostare [`loadTranslationsPath`](/docs/react/nextjs/config#load-translations-path) in modo esplicito.

    ```ts title="loadTranslations.ts"
    export default async function loadTranslations(locale: string) {
      const t = await import(`./_gt/${locale}.json`);
      return t.default;
    }
    ```

    ```ts title="next.config.ts"
    import { withGTConfig } from 'gt-next/config';

    export default withGTConfig(nextConfig, { loadTranslationsPath: './loadTranslations.ts' });
    ```
  </Tab>

  <Tab value="TanStack Start">
    Passa [`loadTranslations`](/docs/react/reference/functions/load-translations) alla chiamata di inizializzazione.

    ```tsx
    import { initializeGT } from 'gt-tanstack-start';
    import gtConfig from '../gt.config.json';

    const loadTranslations = (locale: string) =>
      import(`./_gt/${locale}.json`).then((m) => m.default);

    initializeGT({ ...gtConfig, loadTranslations });
    ```
  </Tab>

  <Tab value="React Native">
    Passa [`loadTranslations`](/docs/react/reference/functions/load-translations) alla chiamata di inizializzazione.

    ```tsx
    import { initializeGT } from 'gt-react-native';
    import gtConfig from '../gt.config.json';

    const loadTranslations = (locale: string) =>
      import(`./_gt/${locale}.json`).then((m) => m.default);

    initializeGT({ ...gtConfig, loadTranslations });
    ```
  </Tab>
</Tabs>

Con un loader locale configurato, le traduzioni vengono lette dal tuo bundle e non viene effettuata alcuna richiesta alla CDN. Per tornare al caricamento tramite CDN, rimuovi il loader e fornisci invece un [`projectId`](/docs/react/reference/config#project-id) (vedi [Configure General Translation](/docs/react/guides/configuring#delivery)).

## Next steps

- /docs/react/guides/configuring
- /docs/react/guides/developing-spa-translations
- /docs/react/guides/managing-locales
- /docs/react/guides/translating-jsx

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
