GT Class

GT Constructor

API Reference for the GT class constructor

Overview

The GT constructor creates a new instance of the General Translation class, which provides access to all translation, formatting, and locale functionality.

import { GT } from 'generaltranslation';

const gt = new GT({
  apiKey: 'your-api-key',
  projectId: 'your-project-id',
  sourceLocale: 'en',
  targetLocale: 'es'
});

The constructor will automatically check the environment for GT_API_KEY and GT_PROJECT_ID environment variables, so you can omit them from the constructor parameters. Additionally, it will validate all provided locale codes.


Reference

Parameters

Prop

Type

The GTConstructorParams object supports the following properties:

PropertyTypeOptionalDescription
apiKeystringProduction API key for translation service
devApiKeystringDevelopment API key (takes precedence in development)
projectIdstringUnique project identifier
sourceLocalestringDefault source locale for translations
targetLocalestringDefault target locale for translations
localesstring[]Array of supported locale codes
baseUrlstringCustom API base URL (for enterprise deployments)
customMappingCustomMappingCustom locale code mappings and definitions

Returns

A new GT class instance with all translation and locale methods available.


Examples

Basic Usage

import { GT } from 'generaltranslation';

// Minimal setup - uses environment variables
const gt = new GT();

With API Credentials

const gt = new GT({
  projectId: 'my-project-id',
  apiKey: 'my-api-key',
  targetLocale: 'fr'
});

With Custom Locale Mapping

A custom mapping can be provided. This lets the user (1) use aliases for locale codes which, (2) can override the standard BCP 47 validation, and (3) override the standard BCP 47 locale information.

For example, say you wanted to use cn as an alias for zh. Because the General Translation API does not support cn, you must specify a custom mapping.

const gt = new GT({
  projectId: 'my-project-id',
  apiKey: 'my-api-key',
  targetLocale: 'es',
  customMapping: {
    'cn': { code: 'zh' }
  }
});

You can do other things with custom mappings, such as add custom names, emojis, etc.

const gt = new GT({
  projectId: 'my-project-id',
  apiKey: 'my-api-key',
  targetLocale: 'es',
  customMapping: { 'en-US': { name: 'Mandarin', emoji: '🇫🇷' } }
});

Notes

  • All parameters are optional, but API operations will require apiKey and projectId
  • The constructor validates all locale codes immediately, throwing errors for invalid codes
  • Custom mappings take precedence over standard BCP 47 validation

Next Steps

How is this guide?

GT Constructor