Zadaj pytanie i otrzymaj streszczenie dokumentu, odwołując się do tej strony i wybranego dostawcy AI
Ta dokumentacja jest nieaktualna, wersja bazowa została zaktualizowana w 29 sierpnia 2026.
Przejdź do angielskiej wersji dokumentuHistoria wersji
- "Init history"v5.5.1029.06.2025
Treść tej strony została przetłumaczona przy użyciu sztucznej inteligencji.
Zobacz ostatnią wersję oryginalnej treści w języku angielskimJeśli masz pomysł na ulepszenie tej dokumentacji, zachęcamy do przesłania pull requesta na GitHubie.
Link do dokumentacji na GitHubieKopiuj dokument Markdown do schowka
Dokumentacja Intlayer
Witamy w oficjalnej dokumentacji Intlayer! Tutaj znajdziesz wszystko, czego potrzebujesz, aby zintegrować, skonfigurować i opanować Intlayer dla wszystkich Twoich potrzeb związanych z internacjonalizacją (i18n), niezależnie od tego, czy pracujesz z Next.js, React, Vite, Express, czy w innym środowisku JavaScript.
Wprowadzenie
Czym jest Intlayer?
Intlayer to biblioteka internacjonalizacji zaprojektowana specjalnie dla programistów JavaScript. Pozwala ona na deklarowanie treści w dowolnym miejscu Twojego kodu. Przekształca deklaracje wielojęzycznych treści w ustrukturyzowane słowniki w celu ich łatwej integracji z Twoim kodem. Wykorzystując TypeScript, Intlayer sprawia, że Twoje tworzenie oprogramowania jest solidniejsze i bardziej wydajne.
Intlayer udostępnia również opcjonalny edytor wizualny, który pozwala w prosty sposób edytować i zarządzać treścią. Ten edytor jest szczególnie przydatny dla programistów, którzy preferują wizualny interfejs do zarządzania treścią, lub dla zespołów generujących treści bez konieczności przejmowania się kodem.
Przykład użycia
Skopiuj kod do schowka
Skopiuj kod do schowka
import { t, type Dictionary } from "intlayer";
const componentContent = {
key: "component-key",
content: {
myTranslatedContent: t({
en: "Hello World",
es: "Hola Mundo",
fr: "Bonjour le monde",
pl: "Witaj świecie",
}),
},
} satisfies Dictionary;
export default componentContent;
Skopiuj kod do schowka
import type { FC } from "react";
import { useIntlayer } from "react-intlayer";
export const MyComponent: FC = () => {
const { myTranslatedContent } = useIntlayer("component-key");
return <span>{myTranslatedContent}</span>;
};
Dlaczego Intlayer, a nie alternatywy?
W porównaniu do wiodących rozwiązań takich jak next-intl lub i18next, Intlayer to rozwiązanie, które ma zintegrowane optymalizacje, takie jak:
Zamiast pobierać ogromne pliki JSON do Twoich stron, ładuj tylko niezbędną treść. Intlayer pomaga zmniejszyć rozmiary Twojego kodu wynikowego oraz stron nawet o 50%.
Ograniczanie zasięgu (scoping) treści Twojej aplikacji ułatwia utrzymanie dużych projektów. Możesz skopiować lub usunąć folder pojedynczej funkcjonalności bez obciążania umysłu koniecznością przeglądania całej bazy kodu treści. Ponadto, Intlayer jest w pełni zadeklarowany statycznie (fully typed), co gwarantuje poprawność Twojej treści.
Wspólne umiejscowienie (co-locating) kodu i treści zmniejsza kontekst wymagany przez duże modele językowe (LLM). Intlayer jest również dostarczany z pakietem narzędzi, takim jak CLI służącym do testowania pod kątem brakujących tłumaczeń, LSP, MCP oraz agent skills, dzięki czemu środowisko programistyczne (DX) dla agentów AI staje się znacznie wygodniejsze.
Skorzystaj z automatyzacji, by tłumaczyć w Twoim potoku CI/CD, używając wybranego modelu LLM zgodnie z kosztem Twojego dostawcy AI. Intlayer oferuje również kompilator, aby automatyzować wyciąganie treści, a także platformę webową, by pomóc tłumaczyć w tle.
Podłączanie ogromnych plików JSON do komponentów może prowadzić do problemów z wydajnością i reaktywnością. Intlayer optymalizuje proces ładowania Twojej treści w fazie budowania (build time).
Więcej niż rozwiązanie i18n — Intlayer dostarcza samodzielnie hostowany edytor wizualny oraz w pełni wyposażony system CMS, który pomaga zarządzać Twoimi wielojęzycznymi treściami w czasie rzeczywistym, umożliwiając bezproblemową współpracę między tłumaczami, twórcami treści i pozostałymi członkami zespołu. Treść można przechowywać lokalnie i/lub zdalnie.
Główne funkcje
Intlayer oferuje szereg funkcji dostosowanych do potrzeb nowoczesnego tworzenia stron internetowych. Poniżej znajdują się kluczowe funkcje wraz z linkami do szczegółowej dokumentacji dla każdej z nich:
- Wsparcie dla internacjonalizacji: Zwiększ globalny zasięg swojej aplikacji dzięki wbudowanemu wsparciu dla internacjonalizacji.
- Edytor Wizualny: Usprawnij swój przepływ pracy za pomocą wtyczek edytora zaprojektowanych dla Intlayer. Sprawdź Przewodnik po Edytorze Wizualnym.
- Elastyczność Konfiguracji: Dostosuj swoją konfigurację za pomocą rozbudowanych opcji konfiguracyjnych, wyszczególnonych w Przewodniku po konfiguracji.
- Zaawansowane Narzędzia CLI: Zarządzaj efektywnie swoimi projektami przy użyciu interfejsu wiersza poleceń Intlayer. Odkryj możliwości w Dokumentacji Narzędzi CLI.
Kluczowe Koncepcje
Słownik (Dictionary)
Organizuj swoje wielojęzyczne treści w pobliżu kodu, aby zachować spójność i łatwość w utrzymaniu.
Rozpocznij
Poznaj podstawy deklarowania treści w Intlayer.Tłumaczenie (Translation)
Zrozum, jak tłumaczenia są generowane, przechowywane i wykorzystywane w Twojej aplikacji.Wyliczenie (Enumeration)
Łatwo zarządzaj powtarzalnymi lub stałymi zestawami danych w różnych językach.Warunek (Condition)
Dowiedz się, jak stosować logikę warunkową w Intlayer, aby tworzyć dynamiczne treści.Wstawianie (Insertion)
Odkryj, jak wstawiać wartości w łańcuch znaków przy użyciu znaczników (placeholders).Pobieranie przez Funkcje (Function Fetching)
Zobacz, jak dynamicznie pobierać treść za pomocą niestandardowej logiki, aby dopasować ją do przepływu pracy Twojego projektu.Markdown
Dowiedz się, jak używać Markdown w Intlayer, aby tworzyć wzbogacone teksty.Osadzanie Plików (File embeddings)
Odkryj, jak osadzać zewnętrzne pliki w Intlayer, aby korzystać z nich w edytorze treści.Zagnieżdżanie (Nesting)
Zrozum, jak zagnieżdżać treści w Intlayer, aby budować złożone struktury.
Środowiska i Integracje
Zbudowaliśmy Intlayer z myślą o elastyczności, oferując płynną integrację w obrębie popularnych frameworków i narzędzi do budowania:
- Intlayer z Next.js 16
- Intlayer z Next.js 15
- Intlayer z Next.js 14 (App Router)
- Intlayer z Next.js Page Router
- Intlayer z React CRA
- Intlayer z Vite + React
- Intlayer z React Router v7
- Intlayer z Tanstack Start
- Intlayer z React Native i Expo
- Intlayer z Lynx i React
- Intlayer z Vite + Preact
- Intlayer z Vite + Vue
- Intlayer z Nuxt
- Intlayer z Vite + Svelte
- Intlayer z SvelteKit
- Intlayer z Express
- Intlayer z NestJS
- Intlayer z Hono
- Intlayer z Angular
Każdy przewodnik integracyjny zawiera najlepsze praktyki korzystania z funkcji Intlayer, takich jak renderowanie po stronie serwera (SSR), dynamiczne routowanie, czy renderowanie po stronie klienta, dzięki czemu możesz utrzymać szybką, przyjazną dla SEO i wysoce skalowalną aplikację.
Wnoszenie Wkładu i Opinie
Cenimy siłę open-source i tworzenia oprogramowania opartego o społeczność. Jeśli chciałbyś zaproponować usprawnienia, dodać nowy poradnik lub poprawić błędy w naszych dokumentach, śmiało wyślij Pull Request lub otwórz Issue w naszym repozytorium GitHub.
Gotowy, aby tłumaczyć swoją aplikację szybciej i wydajniej? Zanurz się w naszej dokumentacji, aby rozpocząć korzystanie z Intlayer już dziś. Doświadcz solidnego, zoptymalizowanego podejścia do internacjonalizacji, które sprawi, że Twoje treści będą uporządkowane, a Twój zespół bardziej produktywny.
Często Zadawane Pytania
Intlayer to biblioteka internacjonalizacji (i18n) dla aplikacji JavaScript i TypeScript. Deklarujesz treść komponentu obok samego komponentu w pliku .content.ts, Intlayer kompiluje te deklaracje w typowane słowniki w czasie budowy, a Twoje komponenty odczytują je za pomocą hooka, takiego jak useIntlayer. Obejmuje tłumaczenia, reguły liczby mnogiej, płeć, Markdown, routing uwzględniający lokalizację, metadane SEO, tłumaczenia ze wsparciem AI oraz edytor wizualny dla osób nietechnicznych.
Znacznie mniej niż rozwiązania oparte na przestrzeniach nazw, ponieważ strona nigdy nie pobiera katalogu, którego nie renderuje. Znaczniki renderowane po stronie serwera rozwiązują treść na serwerze, a kompilator czasu budowy zastępuje wywołania useIntlayer dokładnymi wpisami, których używa komponent, dzięki czemu nieużywane klucze i nieużywane języki są usuwane. Słowniki dynamiczne dzielą resztę na poszczególne języki. W porównaniu z typowymi alternatywami, Intlayer zmniejsza rozmiar bundle'a i strony nawet o 50%. Zobacz optymalizację bundle'a oraz benchmark.
Tak, i są dwie drogi. Możesz migrować treść stopniowo za pomocą przewodnika migracji z i18next lub przewodnika migracji z next-intl. Możesz także zachować obecne API w całości: adaptery kompatybilności udostępniają dokładnie to samo API co i18next, react-i18next, next-intl, next-i18next, react-intl, use-intl, vue-i18n i Lingui, ale zasilane słownikami Intlayer, więc zmieniają się importy, a kod komponentów pozostaje nienaruszony.
Tak. Wtyczka sync JSON utrzymuje Twoje pliki /messages/{locale}/{namespace}.json jako źródło prawdy i generuje z nich słowniki Intlayer w obu kierunkach. Wtyczka sync PO robi to samo dla katalogów gettext, a pliki per locale pozwalają rozdzielić zawartość według języka zamiast grupować lokalizacje w jednym pliku.
Nie. Uruchom npx intlayer extract, a Intlayer odczyta Twoje pliki źródłowe, wyodrębni ciągi widoczne dla użytkownika i utworzy plik .content obok każdego z nich, dzięki czemu przeglądasz diff zamiast ręcznie kopiować ciągi do katalogu pojedynczo. Zobacz polecenie extract.
W przypadku w pełni zautomatyzowanego procesu Intlayer Compiler robi to samo w czasie budowania w kodzie JSX, TSX, Vue i Svelte, generując słowniki przy każdej zmianie, dzięki czemu nie ma potrzeby ręcznego zarządzania kluczami. Działa on w oparciu o analizę statyczną, więc ciągi istniejące tylko w czasie wykonywania pozostają poza jego zasięgiem i wymaga kilku adnotacji do odróżnienia tekstu dla użytkownika od logiki aplikacji.
Pięć narzędzi, wszystkie opcjonalne:
- Rozszerzenie VS Code: przejście od klucza
useIntlayerdo pliku treści, który go deklaruje, wyodrębnianie treści z komponentu oraz uruchamianie build, fill, test, push i pull z palety poleceń lub dedykowanej karty Intlayer. - Serwer LSP: taka sama świadomość w dowolnym edytorze obsługującym LSP, z funkcjami przejdź do definicji (go to definition), znajdź wszystkie referencje, podglądem przetłumaczonej wartości po najechaniu kursorem, autouzupełnianiem kluczy i pól oraz ostrzeżeniem, gdy klucz nie jest nigdzie zadeklarowany. Rozpoznaje również wywołania
i18next,react-i18next,next-intliuse-intl, co ułatwia migrację. - Serwer MCP: udostępnia dokumentację i CLI Intlayer dla Cursor, VS Code, Claude Desktop, Claude Code i ChatGPT, dzięki czemu asystent odpowiada na podstawie aktualnej dokumentacji zamiast zgadywać i może samodzielnie wykonywać polecenia, takie jak
intlayer fill. - Umiejętności agenta (Agent skills): wyspecjalizowane umiejętności, takie jak
intlayer-config,intlayer-cliiintlayer-content, oraz po jednej dla każdego frameworka, które uczą agenta konfiguracji routingu i typów węzłów treści. - Wtyczka ESLint: reguła
no-raw-textoznacza zakodowane na stałe ciągi tekstowe, z dodatkowymi regułami dla statycznych kluczy słownika i nieużywanej zawartości.
