@intlayer/docs 8.9.6-canary.0 → 8.9.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/blog/ar/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/de/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/en/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/en/react-i18next_vs_react-intl_vs_intlayer.md +1 -1
- package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/es/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/fr/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/id/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/id/react-i18next_vs_react-intl_vs_intlayer.md +1 -1
- package/blog/it/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/ja/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/ko/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/pl/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/pl/react-i18next_vs_react-intl_vs_intlayer.md +1 -1
- package/blog/pt/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/ru/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/tr/react-i18next_vs_react-intl_vs_intlayer.md +1 -1
- package/blog/uk/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/uk/react-i18next_vs_react-intl_vs_intlayer.md +1 -1
- package/blog/vi/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/blog/vi/react-i18next_vs_react-intl_vs_intlayer.md +1 -1
- package/blog/zh/next-i18next_vs_next-intl_vs_intlayer.md +1 -1
- package/docs/ar/benchmark/nextjs.md +8 -8
- package/docs/ar/benchmark/solid.md +8 -8
- package/docs/ar/benchmark/svelte.md +8 -8
- package/docs/ar/benchmark/tanstack.md +7 -7
- package/docs/ar/benchmark/vue.md +8 -8
- package/docs/ar/interest_of_intlayer.md +107 -80
- package/docs/bn/interest_of_intlayer.md +237 -0
- package/docs/cs/interest_of_intlayer.md +237 -0
- package/docs/de/benchmark/nextjs.md +8 -8
- package/docs/de/benchmark/solid.md +8 -8
- package/docs/de/benchmark/svelte.md +8 -8
- package/docs/de/benchmark/tanstack.md +7 -7
- package/docs/de/benchmark/vue.md +8 -8
- package/docs/de/interest_of_intlayer.md +98 -74
- package/docs/en/benchmark/___nextjs.md +8 -8
- package/docs/en/benchmark/___tanstack.md +6 -6
- package/docs/en/benchmark/nextjs.md +8 -8
- package/docs/en/benchmark/solid.md +8 -8
- package/docs/en/benchmark/svelte.md +8 -8
- package/docs/en/benchmark/tanstack.md +7 -7
- package/docs/en/benchmark/vue.md +8 -8
- package/docs/en/configuration.md +2 -1
- package/docs/en/interest_of_intlayer.md +1 -1
- package/docs/en-GB/benchmark/nextjs.md +8 -8
- package/docs/en-GB/benchmark/solid.md +8 -8
- package/docs/en-GB/benchmark/svelte.md +8 -8
- package/docs/en-GB/benchmark/tanstack.md +7 -7
- package/docs/en-GB/benchmark/vue.md +8 -8
- package/docs/en-GB/configuration.md +2 -1
- package/docs/en-GB/interest_of_intlayer.md +59 -33
- package/docs/es/benchmark/nextjs.md +8 -8
- package/docs/es/benchmark/solid.md +8 -8
- package/docs/es/benchmark/svelte.md +8 -8
- package/docs/es/benchmark/tanstack.md +7 -7
- package/docs/es/benchmark/vue.md +8 -8
- package/docs/es/interest_of_intlayer.md +28 -2
- package/docs/fr/benchmark/nextjs.md +8 -8
- package/docs/fr/benchmark/solid.md +8 -8
- package/docs/fr/benchmark/svelte.md +8 -8
- package/docs/fr/benchmark/tanstack.md +7 -7
- package/docs/fr/benchmark/vue.md +8 -8
- package/docs/fr/interest_of_intlayer.md +47 -21
- package/docs/hi/benchmark/nextjs.md +8 -8
- package/docs/hi/benchmark/solid.md +8 -8
- package/docs/hi/benchmark/svelte.md +8 -8
- package/docs/hi/benchmark/tanstack.md +7 -7
- package/docs/hi/benchmark/vue.md +8 -8
- package/docs/hi/interest_of_intlayer.md +114 -88
- package/docs/id/benchmark/nextjs.md +8 -8
- package/docs/id/benchmark/solid.md +8 -8
- package/docs/id/benchmark/svelte.md +8 -8
- package/docs/id/benchmark/tanstack.md +7 -7
- package/docs/id/benchmark/vue.md +8 -8
- package/docs/id/interest_of_intlayer.md +81 -81
- package/docs/it/benchmark/nextjs.md +8 -8
- package/docs/it/benchmark/solid.md +8 -8
- package/docs/it/benchmark/svelte.md +8 -8
- package/docs/it/benchmark/tanstack.md +7 -7
- package/docs/it/benchmark/vue.md +4 -4
- package/docs/it/interest_of_intlayer.md +96 -69
- package/docs/ja/benchmark/nextjs.md +8 -8
- package/docs/ja/benchmark/solid.md +8 -8
- package/docs/ja/benchmark/svelte.md +8 -8
- package/docs/ja/benchmark/tanstack.md +7 -7
- package/docs/ja/benchmark/vue.md +8 -8
- package/docs/ja/interest_of_intlayer.md +108 -81
- package/docs/ko/benchmark/nextjs.md +8 -8
- package/docs/ko/benchmark/solid.md +8 -8
- package/docs/ko/benchmark/svelte.md +8 -8
- package/docs/ko/benchmark/tanstack.md +7 -7
- package/docs/ko/benchmark/vue.md +8 -8
- package/docs/ko/interest_of_intlayer.md +101 -74
- package/docs/nl/interest_of_intlayer.md +237 -0
- package/docs/pl/benchmark/nextjs.md +8 -8
- package/docs/pl/benchmark/solid.md +8 -8
- package/docs/pl/benchmark/svelte.md +8 -8
- package/docs/pl/benchmark/tanstack.md +7 -7
- package/docs/pl/benchmark/vue.md +8 -8
- package/docs/pl/interest_of_intlayer.md +85 -83
- package/docs/pt/benchmark/nextjs.md +8 -8
- package/docs/pt/benchmark/solid.md +8 -8
- package/docs/pt/benchmark/svelte.md +8 -8
- package/docs/pt/benchmark/tanstack.md +7 -7
- package/docs/pt/benchmark/vue.md +8 -8
- package/docs/pt/interest_of_intlayer.md +91 -67
- package/docs/ru/benchmark/nextjs.md +8 -8
- package/docs/ru/benchmark/solid.md +6 -7
- package/docs/ru/benchmark/svelte.md +8 -8
- package/docs/ru/benchmark/tanstack.md +7 -7
- package/docs/ru/benchmark/vue.md +8 -8
- package/docs/ru/interest_of_intlayer.md +95 -69
- package/docs/tr/benchmark/nextjs.md +8 -8
- package/docs/tr/benchmark/solid.md +8 -8
- package/docs/tr/benchmark/svelte.md +8 -8
- package/docs/tr/benchmark/tanstack.md +7 -7
- package/docs/tr/benchmark/vue.md +8 -8
- package/docs/tr/interest_of_intlayer.md +94 -89
- package/docs/uk/benchmark/nextjs.md +8 -8
- package/docs/uk/benchmark/solid.md +8 -8
- package/docs/uk/benchmark/svelte.md +8 -8
- package/docs/uk/benchmark/tanstack.md +7 -7
- package/docs/uk/benchmark/vue.md +8 -8
- package/docs/uk/interest_of_intlayer.md +94 -96
- package/docs/ur/interest_of_intlayer.md +237 -0
- package/docs/vi/benchmark/nextjs.md +8 -8
- package/docs/vi/benchmark/solid.md +8 -8
- package/docs/vi/benchmark/svelte.md +8 -8
- package/docs/vi/benchmark/tanstack.md +7 -7
- package/docs/vi/benchmark/vue.md +8 -8
- package/docs/vi/interest_of_intlayer.md +82 -79
- package/docs/zh/benchmark/nextjs.md +8 -8
- package/docs/zh/benchmark/solid.md +6 -7
- package/docs/zh/benchmark/svelte.md +7 -7
- package/docs/zh/benchmark/tanstack.md +7 -7
- package/docs/zh/benchmark/vue.md +8 -8
- package/docs/zh/interest_of_intlayer.md +99 -72
- package/docs/zh-TW/interest_of_intlayer.md +237 -0
- package/package.json +6 -6
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2024-08-14
|
|
3
|
+
updatedAt: 2025-09-27
|
|
4
|
+
title: Waarom Intlayer?
|
|
5
|
+
description: Ontdek de voordelen en pluspunten van het gebruik van Intlayer in uw projecten. Begrijp waarom Intlayer uitblinkt tussen andere frameworks.
|
|
6
|
+
keywords:
|
|
7
|
+
- Voordelen
|
|
8
|
+
- Pluspunten
|
|
9
|
+
- Intlayer
|
|
10
|
+
- Framework
|
|
11
|
+
- Vergelijking
|
|
12
|
+
slugs:
|
|
13
|
+
- doc
|
|
14
|
+
- why
|
|
15
|
+
history:
|
|
16
|
+
- version: 7.3.1
|
|
17
|
+
date: 2025-11-27
|
|
18
|
+
changes: "Release Compiler"
|
|
19
|
+
- version: 5.8.0
|
|
20
|
+
date: 2025-08-19
|
|
21
|
+
changes: "Vergelijkingstabel bijgewerkt"
|
|
22
|
+
- version: 5.5.10
|
|
23
|
+
date: 2025-06-29
|
|
24
|
+
changes: "Initiële geschiedenis"
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# Waarom zou u Intlayer overwegen?
|
|
28
|
+
|
|
29
|
+
## Wat is Intlayer?
|
|
30
|
+
|
|
31
|
+
**Intlayer** is een internationaliseringsbibliotheek die specifiek is ontworpen voor JavaScript-ontwikkelaars. Het stelt u in staat om uw inhoud overal in uw code te declareren. Het zet meertalige inhoudsdeclaraties om in gestructureerde woordenboeken die eenvoudig in uw code kunnen worden geïntegreerd. Door gebruik te maken van TypeScript maakt **Intlayer** uw ontwikkeling robuuster en efficiënter.
|
|
32
|
+
|
|
33
|
+
## Waarom is Intlayer gecreëerd?
|
|
34
|
+
|
|
35
|
+
Intlayer is gecreëerd om een veelvoorkomend probleem op te lossen dat alle populaire i18n-bibliotheken beïnvloedt, zoals `next-intl`, `react-i18next`, `react-intl`, `next-i18next`, `react-intl` en `vue-i18n`.
|
|
36
|
+
|
|
37
|
+
Al deze oplossingen hanteren een gecentraliseerde aanpak voor het vermelden en beheren van uw inhoud. Bijvoorbeeld:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
.
|
|
41
|
+
├── locales
|
|
42
|
+
│ ├── en.json
|
|
43
|
+
│ ├── es.json
|
|
44
|
+
│ └── fr.json
|
|
45
|
+
├── i18n.ts
|
|
46
|
+
└── src
|
|
47
|
+
└── components
|
|
48
|
+
└── MyComponent
|
|
49
|
+
└── index.tsx
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Of hier met behulp van namespaces:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
.
|
|
56
|
+
├── locales
|
|
57
|
+
│ ├── en
|
|
58
|
+
│ │ ├── footer.json
|
|
59
|
+
│ │ └── navbar.json
|
|
60
|
+
│ ├── fr
|
|
61
|
+
│ │ ├── footer.json
|
|
62
|
+
│ │ └── navbar.json
|
|
63
|
+
│ └── es
|
|
64
|
+
│ ├── footer.json
|
|
65
|
+
│ └── navbar.json
|
|
66
|
+
├── i18n.ts
|
|
67
|
+
└── src
|
|
68
|
+
└── components
|
|
69
|
+
└── MyComponent
|
|
70
|
+
└── index.tsx
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Dit type architectuur vertraagt het ontwikkelingsproces en maakt de codebase complexer om te onderhouden om verschillende redenen:
|
|
74
|
+
|
|
75
|
+
1. **Voor elke nieuwe component die wordt gemaakt, moet u:**
|
|
76
|
+
- De nieuwe bron/namespace aanmaken in de map `locales`
|
|
77
|
+
- Vergeet niet de nieuwe namespace in uw pagina te importeren
|
|
78
|
+
- Uw inhoud vertalen (vaak handmatig gedaan door kopiëren/plakken van AI-providers)
|
|
79
|
+
|
|
80
|
+
2. **Voor elke wijziging aan uw componenten moet u:**
|
|
81
|
+
- De gerelateerde bron/namespace zoeken (ver weg van de component)
|
|
82
|
+
- Uw inhoud vertalen
|
|
83
|
+
- Zorgen dat uw inhoud up-to-date is voor elke taal
|
|
84
|
+
- Controleren of uw namespace geen ongebruikte sleutels/waarden bevat
|
|
85
|
+
- Zorgen dat de structuur van uw JSON-bestanden voor alle talen hetzelfde is
|
|
86
|
+
|
|
87
|
+
Bij professionele projecten die deze oplossingen gebruiken, worden vaak lokalisatieplatforms gebruikt om de vertaling van uw inhoud te beheren. Dit kan echter snel duur worden voor grote projecten.
|
|
88
|
+
|
|
89
|
+
Om dit probleem op te lossen, hanteert Intlayer een aanpak waarbij uw inhoud per component wordt gescopet en uw inhoud dicht bij uw component wordt gehouden, zoals we vaak doen met CSS (`styled-components`), typen, documentatie (`storybook`) of unit-tests (`jest`).
|
|
90
|
+
|
|
91
|
+
```bash codeFormat="typescript"
|
|
92
|
+
.
|
|
93
|
+
└── components
|
|
94
|
+
└── MyComponent
|
|
95
|
+
├── index.content.ts
|
|
96
|
+
├── index.test.tsx
|
|
97
|
+
├── index.stories.tsx
|
|
98
|
+
└── index.tsx
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
```bash codeFormat="commonjs"
|
|
102
|
+
.
|
|
103
|
+
└── components
|
|
104
|
+
└── MyComponent
|
|
105
|
+
├── index.content.cjs
|
|
106
|
+
├── index.test.mjs
|
|
107
|
+
├── index.stories.mjs
|
|
108
|
+
└── index.tsx
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
```bash codeFormat="esm"
|
|
112
|
+
.
|
|
113
|
+
└── components
|
|
114
|
+
└── MyComponent
|
|
115
|
+
├── index.content.mjs
|
|
116
|
+
├── index.test.mjs
|
|
117
|
+
├── index.stories.mjs
|
|
118
|
+
└── index.tsx
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
```tsx fileName="./components/MyComponent/index.content.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
122
|
+
import { t, type Dictionary } from "intlayer";
|
|
123
|
+
|
|
124
|
+
const componentExampleContent = {
|
|
125
|
+
key: "component-example",
|
|
126
|
+
content: {
|
|
127
|
+
myTranslatedContent: t({
|
|
128
|
+
en: "Hello World",
|
|
129
|
+
es: "Hola Mundo",
|
|
130
|
+
fr: "Bonjour le monde",
|
|
131
|
+
}),
|
|
132
|
+
},
|
|
133
|
+
} satisfies Dictionary;
|
|
134
|
+
|
|
135
|
+
export default componentExampleContent;
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
```tsx fileName="./components/MyComponent/index.tsx" codeFormat={["typescript", "esm"]}
|
|
139
|
+
import { useIntlayer } from "react-intlayer";
|
|
140
|
+
|
|
141
|
+
export const ComponentExample = () => {
|
|
142
|
+
const { myTranslatedContent } = useIntlayer("component-example");
|
|
143
|
+
|
|
144
|
+
return <span>{myTranslatedContent}</span>;
|
|
145
|
+
};
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
Deze aanpak stelt u in staat om:
|
|
149
|
+
|
|
150
|
+
1. **De ontwikkelingssnelheid te verhogen**
|
|
151
|
+
- `.content.{{ts|mjs|cjs|json}}`-bestanden kunnen worden gemaakt met een VSCode-extensie
|
|
152
|
+
- Autocomplete AI-tools in uw IDE (zoals GitHub Copilot) kunnen u helpen bij het declareren van uw inhoud, waardoor kopiëren/plakken wordt verminderd
|
|
153
|
+
|
|
154
|
+
2. **Uw codebase op te schonen**
|
|
155
|
+
- Complexiteit verminderen
|
|
156
|
+
- Onderhoudbaarheid verhogen
|
|
157
|
+
|
|
158
|
+
3. **Uw componenten en hun gerelateerde inhoud gemakkelijker te dupliceren (bijv. login/registratiecomponenten, enz.)**
|
|
159
|
+
- Door het risico te beperken dat de inhoud van andere componenten wordt beïnvloed
|
|
160
|
+
- Door uw inhoud van de ene applicatie naar de andere te kopiëren/plakken zonder externe afhankelijkheden
|
|
161
|
+
|
|
162
|
+
4. **Vervuiling van uw codebase met ongebruikte sleutels/waarden voor ongebruikte componenten te vermijden**
|
|
163
|
+
- Als u een component niet gebruikt, zal Intlayer de bijbehorende inhoud niet importeren
|
|
164
|
+
- Als u een component verwijdert, zult u er gemakkelijker aan denken om de bijbehorende inhoud te verwijderen omdat deze in dezelfde map aanwezig is
|
|
165
|
+
|
|
166
|
+
5. **De redeneringskosten voor AI-agenten te verlagen om uw meertalige inhoud te declareren**
|
|
167
|
+
- Een AI-agent hoeft niet uw hele codebase te scannen om te weten waar uw inhoud moet worden geïmplementeerd
|
|
168
|
+
- Vertalingen kunnen eenvoudig worden uitgevoerd door autocomplete AI-tools in uw IDE (zoals GitHub Copilot)
|
|
169
|
+
|
|
170
|
+
6. **De laadprestaties te optimaliseren**
|
|
171
|
+
- Als een component lazy-loaded is, wordt de bijbehorende inhoud tegelijkertijd geladen
|
|
172
|
+
|
|
173
|
+
## Aanvullende functies van Intlayer
|
|
174
|
+
|
|
175
|
+
| Functie | Beschrijving |
|
|
176
|
+
| ------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
177
|
+
|  | **Cross-Framework Ondersteuning**<br><br>Intlayer is compatibel met alle belangrijke frameworks en bibliotheken, waaronder Next.js, React, Vite, Vue.js, Nuxt, Preact, Express en meer. |
|
|
178
|
+
|  | **JavaScript-gestuurd inhoudbeheer**<br><br>Profiteer van de flexibiliteit van JavaScript om uw inhoud efficiënt te definiëren en te beheren. <br><br> - [Inhoudsdeclaratie](https://intlayer.org/doc/concept/content) |
|
|
179
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/compiler.jpg?raw=true" alt="Functie" width="700"> | **Compiler**<br><br>De Intlayer Compiler extraheert automatisch de inhoud uit de componenten en genereert de woordenboekbestanden.<br><br> - [Compiler](https://intlayer.org/doc/compiler) |
|
|
180
|
+
|  | **Inhoudsdeclaratiebestand per taal**<br><br>Versnel uw ontwikkeling door uw inhoud eenmalig te declareren, voorafgaand aan de automatische generatie.<br><br> - [Inhoudsdeclaratiebestand per taal](https://intlayer.org/doc/concept/per-locale-file) |
|
|
181
|
+
|  | **Type-Safe Omgeving**<br><br>Gebruik TypeScript om ervoor te zorgen dat uw inhoudsdefinities en code foutloos zijn, terwijl u ook profiteert van IDE-autocomplete.<br><br> - [TypeScript-configuratie](https://intlayer.org/doc/environment/vite-and-react#configure-typescript) |
|
|
182
|
+
|  | **Vereenvoudigde Setup**<br><br>Snel aan de slag met minimale configuratie. Pas instellingen voor internationalisering, routing, AI, build en inhoudsverwerking eenvoudig aan. <br><br> - [Ontdek Next.js-integratie](https://intlayer.org/doc/environment/nextjs) |
|
|
183
|
+
|  | **Vereenvoudigde inhoudsopvraging**<br><br>U hoeft uw `t`-functie niet aan te roepen voor elk stukje inhoud. Haal al uw inhoud rechtstreeks op met een enkele hook.<br><br> - [React-integratie](https://intlayer.org/doc/environment/create-react-app) |
|
|
184
|
+
|  | **Consistente Server Component-implementatie**<br><br>Perfect geschikt voor Next.js server components, gebruik dezelfde implementatie voor zowel client- als server-componenten, u hoeft uw `t`-functie niet door elke server-component door te geven. <br><br> - [Server Components](https://intlayer.org/doc/environment/nextjs#step-7-utilize-content-in-your-code) |
|
|
185
|
+
|  | **Georganiseerde Codebase**<br><br>Houd uw codebase georganiseerder: 1 component = 1 woordenboek in dezelfde map. Vertalingen dicht bij hun respectievelijke componenten verbeteren de onderhoudbaarheid en duidelijkheid. <br><br> - [Hoe Intlayer werkt](https://intlayer.org/doc/concept/how-works-intlayer) |
|
|
186
|
+
|  | **Verbeterde Routing**<br><br>Volledige ondersteuning voor app-routing, naadloos aangepast aan complexe applicatiestructuren, voor Next.js, React, Vite, Vue.js, enz.<br><br> - [Ontdek Next.js-integratie](https://intlayer.org/doc/environment/nextjs) |
|
|
187
|
+
|  | **Markdown-ondersteuning**<br><br>Importeer en interpreteer lokale bestanden en externe Markdown voor meertalige inhoud zoals privacybeleid, documentatie, enz. Interpreteer en maak Markdown-metadata toegankelijk in uw code.<br><br> - [Inhoudsbestanden](https://intlayer.org/doc/concept/content/file) |
|
|
188
|
+
|  | **Gratis Visuele Editor & CMS**<br><br>Een gratis visuele editor en CMS zijn beschikbaar voor contentschrijvers, waardoor de noodzaak voor een lokalisatieplatform vervalt. Houd uw inhoud gesynchroniseerd met Git, of externaliseer deze volledig of gedeeltelijk met het CMS.<br><br> - [Intlayer Editor](https://intlayer.org/doc/concept/editor) <br> - [Intlayer CMS](https://intlayer.org/doc/concept/cms) |
|
|
189
|
+
|  | **Tree-shakable inhoud**<br><br>Tree-shakable inhoud, waardoor de grootte van de uiteindelijke bundel wordt verminderd. Laadt inhoud per component, waardoor ongebruikte inhoud uit uw bundel wordt uitgesloten. Ondersteunt lazy loading om de laadefficiëntie van de app te verhogen. <br><br> - [App build optimalisatie](https://intlayer.org/doc/concept/how-works-intlayer#app-build-optimization) |
|
|
190
|
+
|  | **Static Rendering**<br><br>Blokkeert Static Rendering niet. <br><br> - [Next.js-integratie](https://intlayer.org/doc/environment/nextjs) |
|
|
191
|
+
|  | **AI-gestuurde vertaling**<br><br>Zet uw website met één klik om in 231 talen met behulp van de geavanceerde AI-gestuurde vertaaltools van Intlayer met uw eigen AI-provider/API-sleutel. <br><br> - [CI/CD-integratie](https://intlayer.org/doc/concept/ci-cd) <br> - [Intlayer CLI](https://intlayer.org/doc/concept/cli) <br> - [Auto-fill](https://intlayer.org/doc/concept/auto-fill) |
|
|
192
|
+
|  | **MCP Server Integratie**<br><br>Biedt een MCP (Model Context Protocol) server voor IDE-automatisering, waardoor naadloos inhoudbeheer en i18n-workflows direct binnen uw ontwikkelomgeving mogelijk zijn. <br><br> - [MCP Server](https://github.com/aymericzip/intlayer/blob/main/docs/nl/mcp_server.md) |
|
|
193
|
+
|  | **VSCode Extensie**<br><br>Intlayer biedt een VSCode-extensie om u te helpen uw inhoud en vertalingen te beheren, uw woordenboeken te bouwen, uw inhoud te vertalen en meer. <br><br> - [VSCode Extensie](https://intlayer.org/doc/vs-code-extension) |
|
|
194
|
+
|  | **Interoperabiliteit**<br><br>Maakt interoperabiliteit met react-i18next, next-i18next, next-intl en react-intl mogelijk. <br><br> - [Intlayer en react-intl](https://intlayer.org/blog/intlayer-with-react-intl) <br> - [Intlayer en next-intl](https://intlayer.org/blog/intlayer-with-next-intl) <br> - [Intlayer en next-i18next](https://intlayer.org/blog/intlayer-with-next-i18next) |
|
|
195
|
+
| Testen van ontbrekende vertalingen (CLI/CI) | ✅ CLI: npx intlayer content test (CI-vriendelijke audit) |
|
|
196
|
+
|
|
197
|
+
## Vergelijking van Intlayer met andere oplossingen
|
|
198
|
+
|
|
199
|
+
| Functie | `intlayer` | `react-i18next` | `react-intl` (FormatJS) | `lingui` | `next-intl` | `next-i18next` | `vue-i18n` |
|
|
200
|
+
| ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ |
|
|
201
|
+
| **Vertalingen nabij componenten** | ✅ Ja, inhoud is samen met elke component geplaatst | ❌ Nee | ❌ Nee | ❌ Nee | ❌ Nee | ❌ Nee | ✅ Ja - bij gebruik van `Single File Components` (SFCs) |
|
|
202
|
+
| **TypeScript-integratie** | ✅ Geavanceerd, automatisch gegenereerde strikte typen | ⚠️ Basis; extra configuratie nodig voor veiligheid | ✅ Goed, maar minder strikt | ⚠️ Typeringen, configuratie nodig | ✅ Goed | ⚠️ Basis | ✅ Goed (typen zijn beschikbaar; sleutelbeveiliging vereist setup) |
|
|
203
|
+
| **Detectie van ontbrekende vertalingen** | ✅ TypeScript-foutmarkering en build-time fout/waarschuwing | ⚠️ Meestal fallback-strings bij runtime | ⚠️ Fallback-strings | ⚠️ Extra configuratie nodig | ⚠️ Runtime fallback | ⚠️ Runtime fallback | ⚠️ Runtime fallback/waarschuwingen (configureerbaar) |
|
|
204
|
+
| **Rijke inhoud (JSX/Markdown/componenten)** | ✅ Directe ondersteuning | ⚠️ Beperkt / alleen interpolatie | ⚠️ ICU-syntaxis, geen echte JSX | ⚠️ Beperkt | ❌ Niet ontworpen voor rijke nodes | ⚠️ Beperkt | ⚠️ Beperkt (componenten via `<i18n-t>`, Markdown via plugins) |
|
|
205
|
+
| **AI-gestuurde vertaling** | ✅ Ja, ondersteunt meerdere AI-providers. Bruikbaar met uw eigen API-sleutels. Houdt rekening met de context van uw applicatie en inhoud | ❌ Nee | ❌ Nee | ❌ Nee | ❌ Nee | ❌ Nee | ❌ Nee |
|
|
206
|
+
| **Visuele Editor** | ✅ Ja, lokale Visuele Editor + optioneel CMS; kan codebase-inhoud externaliseren; inbedbaar | ❌ Nee / beschikbaar via externe lokalisatieplatforms | ❌ Nee / beschikbaar via externe lokalisatieplatforms | ❌ Nee / beschikbaar via externe lokalisatieplatforms | ❌ Nee / beschikbaar via externe lokalisatieplatforms | ❌ Nee / beschikbaar via externe lokalisatieplatforms | ❌ Nee / beschikbaar via externe lokalisatieplatforms |
|
|
207
|
+
| **Gelokaliseerde Routing** | ✅ Ja, ondersteunt gelokaliseerde paden uit de doos (werkt met Next.js & Vite) | ⚠️ Geen ingebouwde ondersteuning, vereist plugins (bijv. `next-i18next`) of aangepaste routerconfiguratie | ❌ Nee, alleen berichtformattering, routing moet handmatig | ⚠️ Geen ingebouwde ondersteuning, vereist plugins of handmatige configuratie | ✅ Ingebouwd, App Router ondersteunt `[locale]`-segment | ✅ Ingebouwd | ✅ Ingebouwd |
|
|
208
|
+
| **Dynamische Routegeneratie** | ✅ Ja | ⚠️ Plugin/ecosysteem of handmatige setup | ❌ Niet aangeboden | ⚠️ Plugin/handmatig | ✅ Ja | ✅ Ja | ❌ Niet aangeboden (Nuxt i18n biedt dit aan) |
|
|
209
|
+
| **Meervoudsvormen** | ✅ Enumeratie-gebaseerde patronen | ✅ Configureerbaar (plugins zoals i18next-icu) | ✅ (ICU) | ✅ (ICU/messageformat) | ✅ Goed | ✅ Goed | ✅ Ingebouwde meervoudsregels |
|
|
210
|
+
| **Formattering (datums, getallen, valuta)** | ✅ Geoptimaliseerde formatters (Intl onder de motorkap) | ⚠️ Via plugins of aangepast Intl-gebruik | ✅ ICU-formatters | ✅ ICU/CLI-helpers | ✅ Goed (Intl-helpers) | ✅ Goed (Intl-helpers) | ✅ Ingebouwde datum/getal-formatters (Intl) |
|
|
211
|
+
| **Inhoudsformaat** | ✅ .tsx, .ts, .js, .json, .md, .txt, (.yaml in ontwikkeling) | ⚠️ .json | ✅ .json, .js | ⚠️ .po, .json | ✅ .json, .js, .ts | ⚠️ .json | ✅ .json, .js |
|
|
212
|
+
| **ICU-ondersteuning** | ⚠️ In ontwikkeling | ⚠️ Via plugin (i18next-icu) | ✅ Ja | ✅ Ja | ✅ Ja | ⚠️ Via plugin (`i18next-icu`) | ⚠️ Via aangepaste formatter/compiler |
|
|
213
|
+
| **SEO-helpers (hreflang, sitemap)** | ✅ Ingebouwde tools: helpers voor sitemap, robots.txt, metadata | ⚠️ Community-plugins/handmatig | ❌ Geen kernonderdeel | ❌ Geen kernonderdeel | ✅ Goed | ✅ Goed | ❌ Geen kernonderdeel (Nuxt i18n biedt helpers aan) |
|
|
214
|
+
| **Ecosysteem / Gemeenschap** | ⚠️ Kleiner maar groeit snel en is reactief | ✅ Grootste en meest volwassen | ✅ Groot | ⚠️ Kleiner | ✅ Middelgroot, gericht op Next.js | ✅ Middelgroot, gericht op Next.js | ✅ Groot in Vue-ecosysteem |
|
|
215
|
+
| **Server-side Rendering & Server Components** | ✅ Ja, gestroomlijnd voor SSR / React Server Components | ⚠️ Ondersteund op paginaniveau, maar t-functies moeten over de componentenboom voor sub-server-componenten worden doorgegeven | ⚠️ Ondersteund op paginaniveau met extra setup, maar t-functies moeten over de componentenboom voor sub-server-componenten worden doorgegeven | ✅ Ondersteund, setup nodig | ⚠️ Ondersteund op paginaniveau, maar t-functies moeten over de componentenboom voor sub-server-componenten worden doorgegeven | ⚠️ Ondersteund op paginaniveau, maar t-functies moeten over de componentenboom voor sub-server-componenten worden doorgegeven | ✅ SSR via Nuxt/Vue SSR (geen RSC) |
|
|
216
|
+
| **Tree-shaking (laad alleen gebruikte inhoud)** | ✅ Ja, per component tijdens build-tijd via Babel/SWC-plugins | ⚠️ Laadt meestal alles (kan worden verbeterd met namespaces/code-splitting) | ⚠️ Laadt meestal alles | ❌ Niet standaard | ⚠️ Gedeeltelijk | ⚠️ Gedeeltelijk | ⚠️ Gedeeltelijk (met code-splitting/handmatige setup) |
|
|
217
|
+
| **Lazy loading** | ✅ Ja, per taal / per woordenboek | ✅ Ja (bijv. on-demand backends/namespaces) | ✅ Ja (gesplitste taalbundels) | ✅ Ja (dynamische catalogusimports) | ✅ Ja (per route/per taal), namespace-beheer nodig | ✅ Ja (per route/per taal), namespace-beheer nodig | ✅ Ja (asynchrone taalberichten) |
|
|
218
|
+
| **Ongebruikte inhoud opschonen** | ✅ Ja, per woordenboek tijdens build-tijd | ❌ Nee, alleen via handmatige namespace-segmentatie | ❌ Nee, alle gedeclareerde berichten worden gebundeld | ✅ Ja, ongebruikte sleutels worden gedetecteerd en bij build verwijderd | ❌ Nee, kan handmatig worden beheerd met namespace-beheer | ❌ Nee, kan handmatig worden beheerd met namespace-beheer | ❌ Nee, alleen mogelijk via handmatige lazy-loading |
|
|
219
|
+
| **Beheer van grote projecten** | ✅ Moedigt modulariteit aan, geschikt voor design systems | ⚠️ Goede bestandsdiscipline vereist | ⚠️ Centrale catalogi kunnen groot worden | ⚠️ Kan complex worden | ✅ Modulair met setup | ✅ Modulair met setup | ✅ Modulair met Vue Router/Nuxt i18n setup |
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
## GitHub-sterren
|
|
224
|
+
|
|
225
|
+
GitHub-sterren zijn een sterke indicator voor de populariteit van een project, het vertrouwen van de gemeenschap en de relevantie op de lange termijn. Hoewel ze geen directe maatstaf zijn voor technische kwaliteit, weerspiegelen ze hoeveel ontwikkelaars het project nuttig vinden, de voortgang ervan volgen en het waarschijnlijk zullen adopteren. Voor het schatten van de waarde van een project helpen sterren om de tractie tussen alternatieven te vergelijken en bieden ze inzichten in de groei van het ecosysteem.
|
|
226
|
+
|
|
227
|
+
[](https://www.star-history.com/#formatjs/formatjs&i18next/react-i18next&i18next/i18next&i18next/next-i18next&lingui/js-lingui&amannn/next-intl&intlify/vue-i18n&opral/paraglide-js&aymericzip/intlayer)
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
## Interoperabiliteit
|
|
232
|
+
|
|
233
|
+
`intlayer` kan ook helpen bij het beheren van uw `react-intl`, `react-i18next`, `next-intl`, `next-i18next` en `vue-i18n` namespaces.
|
|
234
|
+
|
|
235
|
+
Met `intlayer` kunt u uw inhoud declareren in het formaat van uw favoriete i18n-bibliotheek, en intlayer genereert uw namespaces op de locatie van uw keuze (voorbeeld: `/messages/{{locale}}/{{namespace}}.json`).
|
|
236
|
+
|
|
237
|
+
Raadpleeg de [`dictionaryOutput` en `i18nextResourcesDir` opties](https://intlayer.org/doc/concept/configuration#content-configuration) voor meer details.
|
|
@@ -36,14 +36,14 @@ Ta strona to raport z benchmarku rozwiązań i18n w Next.js.
|
|
|
36
36
|
|
|
37
37
|
## Referencja wyników:
|
|
38
38
|
|
|
39
|
-
<
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
39
|
+
<ClickToOpenIframe
|
|
40
|
+
src="https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-nextjs.md"
|
|
41
|
+
width="100%"
|
|
42
|
+
height="600px"
|
|
43
|
+
style="border:none;"
|
|
44
|
+
/>
|
|
45
45
|
|
|
46
|
-
> https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-nextjs.md
|
|
46
|
+
> [Zobacz pełne dane benchmarku](https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-nextjs.md)
|
|
47
47
|
|
|
48
48
|
Zobacz pełne repozytorium benchmarka [tutaj](https://github.com/intlayer-org/benchmark-i18n).
|
|
49
49
|
|
|
@@ -72,7 +72,7 @@ Intlayer stara się optymalizować we wszystkich tych wymiarach.
|
|
|
72
72
|
|
|
73
73
|
Aby ujawnić te problemy, zbudowałem darmowy skaner, który możesz wypróbować [tutaj](https://intlayer.org/i18n-seo-scanner).
|
|
74
74
|
|
|
75
|
-
<
|
|
75
|
+
<ClickToOpenIframe src="https://intlayer.org/i18n-seo-scanner" width="100%" height="600px" style="border:none;"/>
|
|
76
76
|
|
|
77
77
|
## Problem
|
|
78
78
|
|
|
@@ -36,14 +36,14 @@ Ta strona zawiera raport z benchmarku rozwiązań i18n dla Solid.
|
|
|
36
36
|
|
|
37
37
|
## Referencja wyników:
|
|
38
38
|
|
|
39
|
-
<
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
39
|
+
<ClickToOpenIframe
|
|
40
|
+
src="https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-vite_solid.md"
|
|
41
|
+
width="100%"
|
|
42
|
+
height="600px"
|
|
43
|
+
style="border:none;"
|
|
44
|
+
/>
|
|
45
45
|
|
|
46
|
-
> https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-vite_solid.md
|
|
46
|
+
> [Zobacz pełne dane benchmarku](https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-vite_solid.md)
|
|
47
47
|
|
|
48
48
|
Pełne repozytorium benchmarku znajdziesz [tutaj](https://github.com/intlayer-org/benchmark-i18n/tree/main).
|
|
49
49
|
|
|
@@ -68,7 +68,7 @@ Innym skutkiem jest wpływ na doświadczenie programisty (DX): sposób deklarowa
|
|
|
68
68
|
|
|
69
69
|
Aby szybko wykryć problemy z wyciekami i18n, przygotowałem darmowy skaner dostępny [tutaj](https://intlayer.org/i18n-seo-scanner).
|
|
70
70
|
|
|
71
|
-
<
|
|
71
|
+
<ClickToOpenIframe src="https://intlayer.org/i18n-seo-scanner" width="100%" height="600px" style="border:none;"/>
|
|
72
72
|
|
|
73
73
|
## Problem
|
|
74
74
|
|
|
@@ -36,14 +36,14 @@ Ta strona zawiera raport z benchmarku rozwiązań i18n dla Svelte.
|
|
|
36
36
|
|
|
37
37
|
## Referencja wyników:
|
|
38
38
|
|
|
39
|
-
<
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
39
|
+
<ClickToOpenIframe
|
|
40
|
+
src="https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-vite_svelte.md"
|
|
41
|
+
width="100%"
|
|
42
|
+
height="600px"
|
|
43
|
+
style="border:none;"
|
|
44
|
+
/>
|
|
45
45
|
|
|
46
|
-
> https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-vite_svelte.md
|
|
46
|
+
> [Zobacz pełne dane benchmarku](https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-vite_svelte.md)
|
|
47
47
|
|
|
48
48
|
Pełne repozytorium benchmarku znajdziesz [tutaj](https://github.com/intlayer-org/benchmark-i18n/tree/main).
|
|
49
49
|
|
|
@@ -67,7 +67,7 @@ Innym skutkiem jest wpływ na doświadczenie programisty (DX): sposób deklarowa
|
|
|
67
67
|
|
|
68
68
|
Aby szybko wykryć problemy z wyciekami i18n, przygotowałem darmowy skaner dostępny [tutaj](https://intlayer.org/i18n-seo-scanner).
|
|
69
69
|
|
|
70
|
-
<
|
|
70
|
+
<ClickToOpenIframe src="https://intlayer.org/i18n-seo-scanner" width="100%" height="600px" style="border:none;"/>
|
|
71
71
|
|
|
72
72
|
## Problem
|
|
73
73
|
|
|
@@ -36,14 +36,14 @@ Ta strona to raport z benchmarku rozwiązań i18n w TanStack Start.
|
|
|
36
36
|
|
|
37
37
|
## Referencja wyników:
|
|
38
38
|
|
|
39
|
-
<
|
|
40
|
-
src="https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-tanstack.md"
|
|
41
|
-
width="100%"
|
|
39
|
+
<ClickToOpenIframe
|
|
40
|
+
src="https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-tanstack.md"
|
|
41
|
+
width="100%"
|
|
42
42
|
height="600px"
|
|
43
|
-
style="border:none;"
|
|
44
|
-
|
|
43
|
+
style="border:none;"
|
|
44
|
+
/>
|
|
45
45
|
|
|
46
|
-
> https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-tanstack.md
|
|
46
|
+
> [Zobacz pełne dane benchmarku](https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-tanstack.md)
|
|
47
47
|
|
|
48
48
|
Zobacz pełne repozytorium benchmarka [tutaj](https://github.com/intlayer-org/benchmark-i18n/tree/main).
|
|
49
49
|
|
|
@@ -68,7 +68,7 @@ Inny wpływ dotyczy doświadczenia programisty (DX): sposobu deklarowania treśc
|
|
|
68
68
|
|
|
69
69
|
Aby szybko wykryć problemy z wyciekami i18n, przygotowałem darmowy skaner dostępny [tutaj](https://intlayer.org/i18n-seo-scanner).
|
|
70
70
|
|
|
71
|
-
<
|
|
71
|
+
<ClickToOpenIframe src="https://intlayer.org/i18n-seo-scanner" width="100%" height="600px" style="border:none;"/>
|
|
72
72
|
|
|
73
73
|
## Problem
|
|
74
74
|
|
package/docs/pl/benchmark/vue.md
CHANGED
|
@@ -36,14 +36,14 @@ Ta strona zawiera raport z benchmarku rozwiązań i18n dla Vue.
|
|
|
36
36
|
|
|
37
37
|
## Referencja wyników:
|
|
38
38
|
|
|
39
|
-
<
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
39
|
+
<ClickToOpenIframe
|
|
40
|
+
src="https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-vite_vue.md"
|
|
41
|
+
width="100%"
|
|
42
|
+
height="600px"
|
|
43
|
+
style="border:none;"
|
|
44
|
+
/>
|
|
45
45
|
|
|
46
|
-
> https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-vite_vue.md
|
|
46
|
+
> [Zobacz pełne dane benchmarku](https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-vite_vue.md)
|
|
47
47
|
|
|
48
48
|
Pełne repozytorium benchmarku znajdziesz [tutaj](https://github.com/intlayer-org/benchmark-i18n/tree/main).
|
|
49
49
|
|
|
@@ -67,7 +67,7 @@ Innym skutkiem jest wpływ na doświadczenie programisty (DX): sposób deklarowa
|
|
|
67
67
|
|
|
68
68
|
Aby szybko wykryć problemy z wyciekami i18n, przygotowałem darmowy skaner dostępny [tutaj](https://intlayer.org/i18n-seo-scanner).
|
|
69
69
|
|
|
70
|
-
<
|
|
70
|
+
<ClickToOpenIframe src="https://intlayer.org/i18n-seo-scanner" width="100%" height="600px" style="border:none;"/>
|
|
71
71
|
|
|
72
72
|
## Problem
|
|
73
73
|
|