Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

azure-translator-code

Package Overview
Dependencies
Maintainers
0
Versions
28
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

azure-translator-code

Azure Cognitive Services Translator Text API Code for Use with Common Languages

  • 1.1.18
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
3
increased by200%
Maintainers
0
Weekly downloads
 
Created
Source

Azure Translator Code

npm version License: MIT npm downloads

Azure Translator Code is a powerful library for translating JSON files into multiple languages using the Azure Cognitive Translator service. This library supports translating JSON files located in multiple folders or within a single folder, depending on your needs.



Installation

Install the library using npm or yarn:

As Development Dependency

npm install -D azure-translator-code

or

yarn add -D azure-translator-code

As Production Dependency

npm install azure-translator-code

or

yarn add azure-translator-code

Usage

You can import the JSON file you want to translate in two ways:

Importing a JSON File

const jsonFile = require("./jsonFileToTranslate/en.json");

// or

const jsonFile = {
	HomePage: {
		welcome: "Welcome",
		hello: "Hello",
		SubText: {
			subText: "This is a subtext",
		},
	},
};

Translating JSON to Multiple Languages

After importing the JSON file, you can use the library to translate it:

Importing the Functions
const {
	translate,
	translateText,
	translateToMultipleFolders,
	translateToUnicFolder,
	updateTranslationsMulti,
	updateTranslationsUnic,
} = require("azure-translator-code");
// or
import {
	translate,
	translateText,
	translateToMultipleFolders,
	translateToUnicFolder,
	updateTranslationsMulti,
	updateTranslationsUnic,
} from "azure-translator-code";

import type { TranslationType } from "azure-translator-code";

Define your Azure API details and languages:

const key = "YOUR_AZURE_KEY"; // Replace with your Azure API key
const endpoint = "https://api.cognitive.microsofttranslator.com/";
const location = "eastus";
const fromLang = "en";
const toLangs = [
	"pt",
	"de",
	"es",
	"fr",
	"it",
	"ja",
	"ko",
	"nl",
	"ru",
	"zh",
	"pt-pt",
	"ar",
	"tlh-Latn",
];

const jsonFile = {
	translation: {
		welcome: "Welcome",
		hello: "Hello",
	},
};

// Translate to multiple folders
translateToMultipleFolders(key, endpoint, location, fromLang, toLangs, jsonFile); 
// This will create a folder called multiFolderGeneratedTranslations

// Translate to a single folder
translateToUnicFolder(key, endpoint, location, fromLang, toLangs, jsonFile); 
// This will create a folder called unicFolderGeneratedTranslations

// Update translations in multiple folders
updateTranslationsMulti(key, endpoint, location, fromLang, toLangs, jsonFile); 
// Only new keys will be translated in the multiFolderGeneratedTranslations folder

// Update translations in a single folder
updateTranslationsUnic(key, endpoint, location, fromLang, toLangs, jsonFile); 
// Only new keys will be translated in the unicFolderGeneratedTranslations folder

Customizing Folder Structure

You can specify the folder name or location where translations will be saved. Saving always starts from the project root folder.

const key = "YOUR_AZURE_KEY";
const endpoint = "https://api.cognitive.microsofttranslator.com/";
const location = "eastus";
const fromLang = "en";
const toLangs = ["pt", "de"];

const jsonFile = {
	translation: {
		welcome: "Welcome",
		hello: "Hello",
	},
};

// Save translations in custom folder
translateToMultipleFolders(
	key,
	endpoint,
	location,
	fromLang,
	toLangs,
	jsonFile,
	"myFolder",
);
// This will create a folder called myFolder

translateToUnicFolder(
	key,
	endpoint,
	location,
	fromLang,
	toLangs,
	jsonFile,
	"./myFolder/OtherFolder/etc",
);
// This will create a folder at ./myFolder/OtherFolder/etc

// If you just want to update the file for new keys, use the update functions to avoid unnecessary requests.

Translating and Logging Results

You can also log the translation results to the console for verification.

const { translate, translateText } = require("azure-translator-code");

const key = "YOUR_AZURE_KEY"; 
const endpoint = "https://api.cognitive.microsofttranslator.com/";
const location = "eastus";
const fromLang = "en";
const toLangs = ["pt"];
const jsonFile = {
	HomePage: {
		Welcome: "Welcome",
		Hello: "Hello",
	},
};

translate(key, endpoint, location, fromLang, toLangs, jsonFile).then((res) => {
	console.log(res);
});

// Output
/**
{
	HomePage: {
		Welcome: "Bem-vindo",
		Hello: "Olá",
	},
};
 */

// or

translateText("Hello World!", fromLang, toLangs, endpoint, key, location).then(
	(res) => {
		console.log(res[0].translations);
	},
);

// Output -> [{ text: "Olá, mundo!", to: "pt" }]

Make sure to replace the key, location and endpoint with your actual Azure access credentials.


Contributing

If you would like to contribute to this project, feel free to open an issue or submit a pull request on our GitHub repository.


Buy Me A Coffee

Keywords

FAQs

Package last updated on 01 Nov 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc