strapi-provider-translate-libretranslate
Version:
Libretranslate provider for translate plugin in Strapi 4
52 lines (44 loc) • 2.04 kB
Markdown
# LibreTranslate provider for Strapi Translate Plugin
Configure the provider through the providerOptions:
```js
module.exports = {
// ...
translate: {
enabled: true,
config: {
// Choose one of the available providers
provider: 'libretranslate',
// Pass credentials and other options to the provider
providerOptions: {
// your API key - required and wil cause errors if not provided
apiKey: 'key',
// api url - required
apiUrl: 'https://your.libretranslate.instance',
// maximum number of requests per minute - optional, default is `undefined` => no limit
apiMaxRPM: 60,
// maximum number of chars per request - optional, default is `undefined` => no limit
apiMaxChars: 1234,
// maximum number of texts per request
apiMaxTexts: 55,
// manually overwrite the Strapi Locale to LibreTranslate Locale mapping.
// default is the string before the `-` character for every locale
localeMap: {
'en-US': 'de',
},
},
// other options ...
},
},
// ...
}
```
or use the default environment variables:
- `LT_API_KEY` - default `undefined`
- `LT_API_URL` - default `undefined`
- `LT_API_MAX_RPM` - default `undefined`
- `LT_API_MAX_CHARS` - default `undefined`
- `LT_API_MAX_TEXTS` - default `undefined`
Note that environment variables take precedence over values `providerOptions`. To force no limit on requests per second or maximum characters, set them to -1
## Limitations:
- Only the [languages supported by argos](https://github.com/argosopentech/argos-translate#supported-languages), the actual translation library behind LibreTranslate, can be translated.
- LibreTranslate servers can impose additional restrictions, such as limits to request frequency or size. You can configure those via the pluginOptions, by default there are no limitations, because [LibreTranslate has no limitations by default](https://github.com/LibreTranslate/LibreTranslate#arguments)