Google translate api browser

Install
npm install google-translate-api-browser
For cross origin requests it uses cors-anywhere. You can use public cors-anywhere server https://cors-anywhere.herokuapp.com/
or set up your own. By default it does not use proxying.
Examples
For browser
import { translate } from "google-translate-api-browser";
translate("Je ne mangé pas six jours", { to: "en", corsUrl: "http://cors-anywhere.herokuapp.com/" })
.then(res => {
console.log(res.text)
})
.catch(err => {
console.error(err);
});
For node (commonjs)
You don't need to use CORS for node
const { translate } = require('google-translate-api-browser');
translate("Je ne mangé pas six jours", { to: "en" })
.then(res => {
console.log(res.text)
})
.catch(err => {
console.error(err);
});
Link to codesandbox
Link to codesandbox with custom fetch function
For node (esm)
Link to codesandbox
API
isSupported(lang: string): boolean
Verifies if the selected language is supported by Google Translate.
translate(text: string, options: Partial): Promise
text
The text to be translated
options
type TranslateOptions = {
rpcids: string;
from: LangKey;
to: LangKey;
hl: LangKey;
tld: string;
raw: boolean;
}
example
const options = {
rpcids: 'MkEWBc',
from: 'ua',
to: 'en',
hl: 'en',
tld: 'com',
raw: true,
}
returns
type TranslationResult = {
text: string;
pronunciation: string;
from: {
language: {
didYouMean: boolean;
iso: string;
};
text: {
autoCorrected: boolean;
value: string;
didYouMean: string;
}
};
raw?: any;
}
normaliseResponse(body: any, raw = false): TranslationResult
Formats the google translate response.
generateRequestUrl(text: string, options: Partial<Omit<TranslateOptions, 'raw'>>): string
Generates a url to google translate api.