translate - v1.0.8
    Preparing search index...

    translate - v1.0.8

    translate

    GitHub Actions npm ru en

    A library for free and not only using various translation APIs, which supports working with JavaScript, TypeScript, and also has built-in separated types for Typebox.

    Installation via Bun:

    bun add @toil/translate
    

    Installation via NPM:

    npm install @toil/translate
    

    To start working with the API, you need to create a Translation Client. This can be done using the code provided below.

    const client = new TranslationClient({
    service: TranslationService.yandexbrowser,
    });

    const translatedResult = await client.translate(
    "The quick brown fox jumps over the lazy dog",
    );

    const detectResult = await client.detect(
    "The quick brown fox jumps over the lazy dog",
    );

    const langs = await client.getLangs();

    You can see more code examples here

    Status Service Functions Limits
    YandexBrowser Translate
    Detect
    GetLangs
    10k chars/req
    10k chars/req
    YandexCloud Translate
    Detect
    GetLangs
    2k chars/req
    1k chars/req
    YandexTranslate Translate
    Detect
    GetLangs
    10k chars/req
    10k chars/req
    YandexGPT*¹ Translate
    Detect
    GetLangs
    10k chars/req
    10k chars/req
    MSEdge Translate
    Detect
    GetLangs
    50k chars/req
    50k chars/req
    Bing Translate
    Detect
    GetLangs
    1k chars/req
    1k chars/req
    LibreTranslate*² Translate
    Detect
    GetLangs
    2k chars/req
    2k chars/req
    OperaAria*³ Translate
    Detect
    GetLangs
    1k chars/req
    6k chars/req

    *¹ - translation using YandexGPT only works for the en-ru pair, For all other cases, a translation similar to YandexTranslate is used

    *² - by default, obtaining a secret key is disabled. Please install apiKey or enable allowUnsafeEval when creating the client. With allowUnsafeEval some requests may result in an error, probably due to some hard limits on the service side

    *³ - translation using OperaAria prohibits the translation of certain forbidden topics and also has geo-restrictions for some countries. The translation is performed using a neural network and may return unexpected results

    To build, you must have:

    Don't forget to install the dependencies:

    bun install
    

    Start building:

    bun build:all
    

    The library has minimal test coverage to check it's performance.

    Run the tests:

    bun test