lingator
Version:
A plug-and-play npm package to auto-translate webpages using Google's Gemini AI.
49 lines (41 loc) • 1.3 kB
JavaScript
// translator.js
export async function translateText(text, targetLanguage) {
const API_KEY = "AIzaSyCUmYkjxf60NQKD9eJT8xxhZ_G_145LsA8"; // 🔑 Replace with your API key
try {
const response = await fetch(
`https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash-latest:generateContent?key=${API_KEY}`,
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
contents: [
{
parts: [
{
text:`Translate the following text into ${targetLanguage} and respond with only the translation, nothing else:\n${text}`
,
},
],
},
],
}),
}
);
if (!response.ok) {
throw new Error(`API Error: ${response.status}`);
}
const data = await response.json();
console.log("✅ Gemini Response:", data);
const translation =
data?.candidates?.[0]?.content?.parts?.[0]?.text?.trim();
if (!translation) {
throw new Error("No translation returned from API");
}
return translation;
} catch (error) {
console.error("❌ API Error:", error);
throw error;
}
}