Vite-Integration
Lingo.dev Compiler integriert sich direkt in Vite, um Lokalisierung zur Build-Zeit für React-Anwendungen bereitzustellen.
Befolgе diese Schritte, um mehrsprachige Unterstützung zu deiner Vite + React-Anwendung hinzuzufügen.
Oder sieh dir das Vite-Demoprojekt an, um den Compiler in Aktion zu erleben.
Voraussetzungen
- Vite 4+
- React 18+
- Node.js 18 oder höher
Schritt 1. Paket installieren
Installieren Sie das lingo.dev-Paket:
npm install lingo.dev
Schritt 2. Vite konfigurieren
Importiere und konfiguriere den Compiler in deiner vite.config.ts
:
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react-swc";
import lingoCompiler from "lingo.dev/compiler";
const viteConfig = {
plugins: [react()],
// Deine bestehende Vite-Konfiguration
};
export default defineConfig(() =>
lingoCompiler.vite({
sourceRoot: "src",
targetLocales: ["es", "fr", "de"],
models: {
"*:*": "groq:mistral-saba-24b",
},
})(viteConfig),
);
Schritt 3. Authentifizierung einrichten
Erstellen Sie ein kostenloses Konto auf groq.com und fügen Sie Ihren API-Schlüssel hinzu:
# .env
GROQ_API_KEY=gsk_...
Schritt 4. Provider hinzufügen
Importieren Sie den Provider in Ihrer Haupteingabedatei (src/main.tsx
):
import React from "react";
import ReactDOM from "react-dom/client";
import App from "./App.tsx";
import { LingoProviderWrapper, loadDictionary } from "lingo.dev/react/client";
ReactDOM.createRoot(document.getElementById("root")!).render(
<React.StrictMode>
<LingoProviderWrapper loadDictionary={(locale) => loadDictionary(locale)}>
<App />
</LingoProviderWrapper>
</React.StrictMode>,
);
Schritt 5. Optional: Locale-Switcher hinzufügen
Erstellen Sie eine Sprachumschalter-Komponente in Ihrer App oder im Header:
import { LocaleSwitcher } from "lingo.dev/react/client";
function App() {
return (
<div className="App">
<header>
<LocaleSwitcher locales={["en", "es", "fr", "de"]} />
</header>
<main>
<h1>Welcome to our app</h1>
<p>This content is automatically translated</p>
</main>
</div>
);
}
export default App;
Schritt 6. Bauen und Testen
Starten Sie Ihren Entwicklungsserver:
npm run dev
Der Compiler wird automatisch:
- Ihre React-Komponenten nach übersetzbaren Inhalten scannen
- Übersetzungsschlüssel extrahieren
- KI-gestützte Übersetzungen generieren
- Optimierte Übersetzungsdateien im Verzeichnis
lingo/
erstellen
Besuchen Sie http://localhost:5173
, um Ihre mehrsprachige App in Aktion zu sehen.
Konfigurationsoptionen
Sie können das Verhalten des Compilers anpassen:
export default defineConfig(() =>
lingoCompiler.vite({
sourceRoot: "src",
sourceLocale: "en",
targetLocales: ["es", "fr", "de", "ja"],
lingoDir: "lingo",
debug: false,
})(viteConfig),
);
Entwicklungsfunktionen
Hot Module Replacement
Der Compiler unterstützt Vites HMR für Übersetzungsaktualisierungen:
// src/components/Welcome.tsx
export function Welcome() {
return (
<div>
<h1>Welcome to our app</h1>
<p>Edit this text and see translations update automatically</p>
</div>
);
}
Build-Optimierung
Vites Build-Optimierung funktioniert nahtlos mit dem Compiler:
- Code-Splitting schließt Übersetzungsbundles ein
- Asset-Optimierung verarbeitet Übersetzungsdateien effizient
- Tree-Shaking entfernt ungenutzte Übersetzungen
Beispiel-Projektstruktur
my-vite-app/
├── src/
│ ├── components/
│ │ └── Welcome.tsx
│ ├── App.tsx
│ ├── main.tsx
│ └── lingo/ # Generierte Übersetzungsdateien
│ ├── meta.json
│ └── dictionary.js
├── vite.config.ts
├── package.json
└── .env
Produktionsdeployment
-
Bauen Sie Ihre Anwendung:
npm run build
-
Übersetzungsdateien committen:
git add src/lingo/ git commit -m "Add translations"
-
Deployment über Ihre bevorzugte Plattform (Vercel, Netlify, etc.)
Ihre Vite-App wird lokalisierte Inhalte automatisch basierend auf den Benutzereinstellungen bereitstellen.
Fehlerbehebung
Häufige Probleme
Übersetzungen werden nicht generiert: Stellen Sie sicher, dass Ihr GROQ_API_KEY
korrekt in Ihrer .env
-Datei eingestellt ist.
Build-Fehler: Stellen Sie sicher, dass das lingo/
-Verzeichnis in Ihrer Versionskontrolle enthalten ist.
HMR funktioniert nicht: Starten Sie den Entwicklungsserver neu, nachdem Sie neue übersetzbare Inhalte hinzugefügt haben.
Nächste Schritte
- Erweiterte Konfiguration: Anpassungsoptionen
- FAQ: Häufige Fragen und Fehlerbehebung
- Wie es funktioniert: Den Build-Prozess verstehen