Alpha
Le Lingo.dev Compiler est en alpha. Il est instable, n’est pas recommandé pour un usage en production, et les API peuvent évoluer d’une version à l’autre.
Ajoutez la prise en charge multilingue à votre application React en moins de 5 minutes.
Prérequis
Node.js 18+ et une application React utilisant Next.js (App Router) ou Vite.
Installation#
pnpm install @lingo.dev/compilerConfigurez votre framework#
Rendez votre config asynchrone et enveloppez-la avec withLingo :
// next.config.ts
import type { NextConfig } from "next";
import { withLingo } from "@lingo.dev/compiler/next";
const nextConfig: NextConfig = {};
export default async function (): Promise<NextConfig> {
return await withLingo(nextConfig, {
sourceRoot: "./app",
sourceLocale: "en",
targetLocales: ["es", "de", "fr"],
models: "lingo.dev",
dev: {
usePseudotranslator: true,
},
});
}Ajoutez LingoProvider#
// app/layout.tsx
import { LingoProvider } from "@lingo.dev/compiler/react";
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<LingoProvider>
<html>
<body>{children}</body>
</html>
</LingoProvider>
);
}Authentification#
npx lingo.dev@latest loginCette commande ouvre votre navigateur pour l’authentification. L’offre Hobby gratuite convient à la plupart des projets.
Si l’authentification via le navigateur est bloquée, ajoutez manuellement la clé à .env :
LINGODOTDEV_API_KEY=your_key_hereLancez le serveur de développement#
npm run devLe Compiler analyse votre JSX, génère des pseudotraductions (de fausses traductions instantanées pour visualiser ce qui sera traduit) et les injecte dans vos composants. Les métadonnées sont stockées dans .lingo/metadata.json — ajoutez ce fichier au contrôle de version.
Ajoutez un sélecteur de langue (facultatif)#
"use client"; // For Next.js
import { useLingoContext } from "@lingo.dev/compiler/react";
export function LanguageSwitcher() {
const { locale, setLocale } = useLingoContext();
return (
<select value={locale} onChange={(e) => setLocale(e.target.value)}>
<option value="en">English</option>
<option value="es">Espanol</option>
<option value="de">Deutsch</option>
</select>
);
}Générez de vraies traductions#
Quand vous êtes prêt, désactivez le pseudotraducteur :
{
dev: {
usePseudotranslator: false,
}
}Redémarrez le serveur de développement. Le Compiler génère de vraies traductions par IA pour les textes nouveaux ou modifiés.
