linguister
TypeScript icon, indicating that this package has built-in type declarations

0.4.0 • Public • Published

Linguister Build Status XO code style Coverage Status Known Vulnerabilities

A free and unlimited API for Google Translate built in typescript 💵🚫

Features

  • Auto language detection
  • Full typing
  • Spelling correction
  • Language correction
  • Fast and reliable – it uses the same servers that translate.google.com uses

Install

npm install --save linguister

Usage

The module automatically exposes a default wrapper through the translate export, however if you want to spawn the requests differently, you can extend Linguister.TranslateAPI, calling _translate for the API request

From automatic language detection to English:

import {translate} from 'linguister'
 
translate('Ik spreek Engels', {to: 'en'}).then(res => {
    console.log(res.text)
    //=> I speak English
    console.log(res.from.language.iso)
    //=> nl
}).catch(err => {
    console.error(err)
})

From English to Dutch with a typo:

translate('I spea Dutch!', {from: 'en', to: 'nl'}).then(res => {
    console.log(res.text)
    //=> Ik spreek Nederlands!
    console.log(res.from.text.autoCorrected)
    //=> true
    console.log(res.from.text.value)
    //=> I [speak] Dutch!
    console.log(res.from.text.didYouMean)
    //=> false
}).catch(err => {
    console.error(err)
})

Sometimes, the API will not use the auto corrected text in the translation:

translate('I spea Dutch!', {from: 'en', to: 'nl'}).then(res => {
    console.log(res);
    console.log(res.text)
    //=> Ik spea Nederlands!
    console.log(res.from.text.autoCorrected)
    //=> false
    console.log(res.from.text.value)
    //=> I [speak] Dutch!
    console.log(res.from.text.didYouMean)
    //=> true
}).catch(err => {
    console.error(err)
})

API

Table of Contents

Translation

The class the API responds with

Properties

  • text string – The translated text
  • from Object Details about the original text
    • from.language.didYouMean Boolean True if the API suggested a correction in the source language
    • from.language.didYouMean String The ISO 639-I language code of the language that the API has recognized in the text
    • from.text.value String The untranslated auto corrected text or suggested text
    • from.text.autoCorrected Boolean True if the API has auto corrected the text
    • from.text.didYouMean Boolean True if the API has suggested corrections to the text
  • raw Array The raw response from th egoogle translate server

LangFrom

Returns the ISO 639-1 code of the desiredLang – if it is supported by Google Translate

Parameters

  • query string – the name or the code of the desired language

Returns string The ISO 639-1 code of the language

TranslateAPI

Used to spawn api requests. Will handle a ratelimit

Parameters

  • ratelimit (optional, default 1000)

translate

Translate a string using google's translate API

Parameters
  • text String The text to translate
  • opts Object Options for the request (optional, default {})
    • opts.from String? The language to translate from
    • opts.to String? The language to translate to

Returns Promise<Translation> The translation response

Coverage

To run the coverage task, the coveralls token must be set in the COVERALLS_REPO_TOKEN enviroment variable

License

MIT © Tom Sputz

Package Sidebar

Install

npm i linguister

Weekly Downloads

1

Version

0.4.0

License

MIT

Unpacked Size

23.1 kB

Total Files

7

Last publish

Collaborators

  • morethantom