# generaltranslation: General Translation Core SDK: Panoramica
URL: https://generaltranslation.com/it/docs/core.mdx
---
title: Panoramica
description: Panoramica della libreria generaltranslation
---
## Introduzione
La libreria `generaltranslation` è la libreria i18n principale di GT e include funzioni di utilità e classi per la traduzione e la formattazione.
Viene spesso utilizzata con pacchetti di framework come `gt-next` e `gt-react`, ma può essere usata anche come libreria autonoma.
import Video from '@/components/Video';
```typescript title="index.ts"
import { GT } from 'generaltranslation';
const gt = new GT({
apiKey: 'your-api-key',
projectId: 'your-project-id',
sourceLocale: 'en',
targetLocale: 'es',
});
// Traduci il contenuto
const result = await gt.translate('Hello, world!', 'es');
// "¡Hola, mundo!"
// Formatta numeri, date e valute
const formattedPrice = gt.formatNum(29.99, { style: 'currency', currency: 'USD' });
const formattedDate = gt.formatDateTime(new Date());
// "$29.99"
// "9/25/2025"
// Gestisci le impostazioni regionali
const localeProps = gt.getLocaleProperties('fr-CA');
const isValid = gt.isValidLocale('de');
// { language: "fr", region: "CA", ... }
// true
```
***
## Installazione
```bash
npm install generaltranslation
```
```bash
yarn add generaltranslation
```
```bash
bun add generaltranslation
```
```bash
pnpm add generaltranslation
```
***
## Esempi
Esistono due tipi principali di traduzione: la traduzione di stringhe e la traduzione di file.
### Setup
Per abilitare la traduzione, devi fornire un ID progetto e una chiave API.
Per maggiori informazioni, consulta il metodo [`constructor`](/docs/core/class/constructor).
```typescript
const gt = new GT({
apiKey: 'your-api-key',
projectId: 'your-project-id',
targetLocale: 'es',
});
```
### Traduzione di stringhe
Per maggiori informazioni, consulta il metodo [`translate`](/docs/core/class/methods/translation/translate).
```typescript
try {
const result = await gt.translate('Hello, world!');
console.log(result); // "¡Hola, mundo!"
} catch (error) {
console.error('Traduzione non riuscita:', error.message);
}
```
### Traduzione dei file
I file vengono tradotti come job.
Avvii un job facendo l'upload di un file.
Fare l'upload di molti file avvia molti job.
Consulta i metodi [`uploadSourceFiles`](/docs/core/class/methods/translation/upload-source-files)
e [`queryFileData`](/docs/core/class/methods/translation/query-file-data) per ulteriori informazioni.
```typescript
// File da upload
const files = [
{
source: {
fileName: 'src/components/Button.tsx',
fileFormat: 'TSX',
locale: 'en',
content: '...',
},
},
];
// Upload dei file sorgente
await gt.uploadSourceFiles(files);
```
***
## Indice
### Classe GT
Classe principale per la traduzione e le funzionalità relative alle impostazioni regionali:
* **[Constructor](/docs/core/class/constructor)** - Inizializza un'istanza di GT con la configurazione
* **[setConfig](/docs/core/class/set-config)** - Aggiorna la configurazione dell'istanza di GT
#### Metodi di traduzione
* **[translate](/docs/core/class/methods/translation/translate)** - Funzionalità principale di traduzione
* **[translateMany](/docs/core/class/methods/translation/translate-many)** - Traduzione in batch
* **[setupProject](/docs/core/class/methods/translation/setup-project)** - Inizializzazione del progetto
* **[checkJobStatus](/docs/core/class/methods/translation/check-job-status)** - Verifica l'avanzamento del job
* **[getProjectData](/docs/core/class/methods/translation/get-project-data)** - Recupera informazioni sul progetto
* **[uploadSourceFiles](/docs/core/class/methods/translation/upload-source-files)** - Upload dei file per la traduzione
* **[uploadTranslations](/docs/core/class/methods/translation/upload-translations)** - Upload di traduzioni preesistenti
* **[enqueueFiles](/docs/core/class/methods/translation/enqueue-files)** - Accoda i file per l'elaborazione
* **[queryFileData](/docs/core/class/methods/translation/query-file-data)** - Verifica lo stato della traduzione
* **[downloadFile](/docs/core/class/methods/translation/download-file)** - Scarica un singolo file
* **[downloadFileBatch](/docs/core/class/methods/translation/download-file-batch)** - Scarica più file
* **[querySourceFile](/docs/core/class/methods/translation/query-source-file)** - Consulta le informazioni sul file sorgente
#### Metodi di formattazione
* **[formatMessage](/docs/core/class/methods/formatting/format-message)** - Formattazione del testo localizzato
* **[formatNum](/docs/core/class/methods/formatting/format-num)** - Formattazione dei numeri
* **[formatDateTime](/docs/core/class/methods/formatting/format-date-time)** - Formattazione di data e ora
* **[formatRelativeTime](/docs/core/class/methods/formatting/format-relative-time)** - Formattazione del tempo relativo con unità esplicita
* **[formatRelativeTimeFromDate](/docs/core/class/methods/formatting/format-relative-time-from-date)** - Formattazione del tempo relativo a partire da un oggetto Date
* **[formatCutoff](/docs/core/class/methods/formatting/format-cutoff)** - Formattazione del troncamento del testo
* **[formatListToParts](/docs/core/class/methods/formatting/format-list-to-parts)** - Formattazione dell'elenco in parti
#### Metodi per le impostazioni regionali
* **[getLocaleName](/docs/core/class/methods/locales/get-locale-name)** - Recupera il nome visualizzato dell'impostazione regionale
* **[getLocaleProperties](/docs/core/class/methods/locales/get-locale-properties)** - Recupera informazioni complete sull'impostazione regionale
* **[getLocaleDirection](/docs/core/class/methods/locales/get-locale-direction)** - Recupera la direzione del testo per l'impostazione regionale
* **[getLocaleEmoji](/docs/core/class/methods/locales/get-locale-emoji)** - Recupera l'emoji della bandiera per l'impostazione regionale
* **[getRegionProperties](/docs/core/class/methods/locales/get-region-properties)** - Recupera informazioni e proprietà della regione
* **[isValidLocale](/docs/core/class/methods/locales/is-valid-locale)** - Convalida il codice locale
* **[resolveAliasLocale](/docs/core/class/methods/locales/resolve-alias-locale)** - Converte le impostazioni regionali canoniche in alias
* **[resolveCanonicalLocale](/docs/core/class/methods/locales/resolve-canonical-locale)** - Converte gli alias delle impostazioni regionali nella forma canonica
* **[standardizeLocale](/docs/core/class/methods/locales/standardize-locale)** - Standardizza il formato del codice locale
* **[isSameDialect](/docs/core/class/methods/locales/is-same-dialect)** - Verifica se le impostazioni regionali rappresentano lo stesso dialetto
* **[isSameLanguage](/docs/core/class/methods/locales/is-same-language)** - Verifica se le impostazioni regionali rappresentano la stessa lingua
* **[isSupersetLocale](/docs/core/class/methods/locales/is-superset-locale)** - Verifica le relazioni gerarchiche tra impostazioni regionali
* **[determineLocale](/docs/core/class/methods/locales/determine-locale)** - Trova l'impostazione regionale più adatta in base alle preferenze
* **[requiresTranslation](/docs/core/class/methods/locales/requires-translation)** - Determina se è necessaria una traduzione
### Funzioni di utilità
#### Funzioni di formattazione
* **[formatMessage](/docs/core/functions/formatting/format-message)** - Formattazione autonoma del testo
* **[formatNum](/docs/core/functions/formatting/format-num)** - Formattazione autonoma dei numeri
* **[formatDateTime](/docs/core/functions/formatting/format-date-time)** - Formattazione autonoma di data e ora
* **[formatRelativeTime](/docs/core/functions/formatting/format-relative-time)** - Formattazione autonoma del tempo relativo
* **[formatRelativeTimeFromDate](/docs/core/functions/formatting/format-relative-time-from-date)** - Formattazione autonoma del tempo relativo da Date
* **[formatCutoff](/docs/core/functions/formatting/format-cutoff)** - Formattazione autonoma del troncamento del testo
* **[formatListToParts](/docs/core/functions/formatting/format-list-to-parts)** - Formattazione autonoma dell'elenco in parti
#### Funzioni di impostazione regionale
* **[getLocaleName](/docs/core/functions/locales/get-locale-name)** - Utility autonoma per il nome dell'impostazione regionale
* **[getLocaleProperties](/docs/core/functions/locales/get-locale-properties)** - Utility autonoma per le proprietà dell'impostazione regionale
* **[getLocaleDirection](/docs/core/functions/locales/get-locale-direction)** - Utility autonoma per la direzione del testo
* **[getLocaleEmoji](/docs/core/functions/locales/get-locale-emoji)** - Utility autonoma per le emoji
* **[getRegionProperties](/docs/core/functions/locales/get-region-properties)** - Utility autonoma per le proprietà della regione
* **[isValidLocale](/docs/core/functions/locales/is-valid-locale)** - Convalida autonoma dell'impostazione regionale
* **[resolveAliasLocale](/docs/core/functions/locales/resolve-alias-locale)** - Risoluzione autonoma dell'alias di impostazione regionale
* **[standardizeLocale](/docs/core/functions/locales/standardize-locale)** - Standardizzazione autonoma dell'impostazione regionale
* **[isSameDialect](/docs/core/functions/locales/is-same-dialect)** - Confronto autonomo dei dialetti
* **[isSameLanguage](/docs/core/functions/locales/is-same-language)** - Confronto autonomo tra lingue
* **[isSupersetLocale](/docs/core/functions/locales/is-superset-locale)** - Verifica autonoma della gerarchia delle impostazioni regionali
* **[determineLocale](/docs/core/functions/locales/determine-locale)** - Negoziazione autonoma dell'impostazione regionale
* **[requiresTranslation](/docs/core/functions/locales/requires-translation)** - Verifica autonoma della necessità di traduzione
### Tipi e interfacce
Definizioni TypeScript:
* **[GTConstructorParams](/docs/core/types/gt-constructor-params)** - Opzioni di configurazione
* **[LocaleProperties](/docs/core/types/locale-properties)** - Informazioni complete sull'impostazione regionale
* **[TranslationResult](/docs/core/types/translation-result)** - Tipi di risposta della traduzione
* **[TranslateManyResult](/docs/core/types/translate-many-result)** - Risposta della traduzione in batch
* **[FileToTranslate](/docs/core/types/file-to-translate)** - Configurazione per la traduzione dei file
* **[EnqueueFilesOptions](/docs/core/types/enqueue-files-options)** - Opzioni per l'accodamento dei file
* **[Entry](/docs/core/types/Entry)** - Struttura della voce
* **[EntryMetadata](/docs/core/types/entry-metadata)** - Informazioni sui metadati della voce
* **[Content](/docs/core/types/Content)** - Definizioni del tipo di contenuto
* **[Variable](/docs/core/types/Variable)** - Struttura della variabile
* **[VariableType](/docs/core/types/variable-type)** - Definizioni del tipo di variabile
* **[JsxElement](/docs/core/types/jsx-element)** - Tipo di elemento JSX
* **[JsxChild](/docs/core/types/jsx-child)** - Tipo di nodo figlio JSX
* **[JsxChildren](/docs/core/types/jsx-children)** - Tipo di nodi figli JSX
* **[DataFormat](/docs/core/types/data-format)** - Specifiche del formato dei dati
* **[CustomMapping](/docs/core/types/custom-mapping)** - Configurazione della mappatura personalizzata
***
## Passaggi successivi
* **[Inizia dalla classe GT](/docs/core/class/constructor)**
* **[Esplora i metodi di traduzione](/docs/core/class/methods/translation/translate)**
* **[Scopri le utilità per le impostazioni regionali](/docs/core/class/methods/locales/get-locale-name)**
* **[Consulta le opzioni di formattazione](/docs/core/class/methods/formatting/format-message)**
* **[Sfoglia le funzioni autonome](/docs/core/functions/formatting/format-message)**
Per l'uso specifico dei framework, consulta la documentazione di [Next.js](/docs/next) o [React](/docs/react).