@intlayer/docs 6.0.0 → 6.0.2-canary.0
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/dist/cjs/blog.cjs.map +1 -1
- package/dist/cjs/common.cjs +6 -5
- package/dist/cjs/common.cjs.map +1 -1
- package/dist/cjs/generated/blog.entry.cjs +318 -1863
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +1317 -6282
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/cjs/generated/frequentQuestions.entry.cjs +197 -1182
- package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
- package/dist/cjs/generated/legal.entry.cjs +43 -84
- package/dist/cjs/generated/legal.entry.cjs.map +1 -1
- package/dist/esm/blog.mjs.map +1 -1
- package/dist/esm/common.mjs +2 -5
- package/dist/esm/common.mjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +318 -1863
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +1317 -6282
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/esm/generated/frequentQuestions.entry.mjs +197 -1182
- package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
- package/dist/esm/generated/legal.entry.mjs +43 -84
- package/dist/esm/generated/legal.entry.mjs.map +1 -1
- package/dist/types/blog.d.ts +1 -1
- package/dist/types/blog.d.ts.map +1 -1
- package/dist/types/common.d.ts +1 -1
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/generated/blog.entry.d.ts +1 -1
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +2 -1
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
- package/dist/types/generated/legal.entry.d.ts +1 -1
- package/dist/types/generated/legal.entry.d.ts.map +1 -1
- package/docs/ar/intlayer_CMS.md +261 -85
- package/docs/ar/releases/v6.md +273 -0
- package/docs/ar/roadmap.md +1 -3
- package/docs/ar/vs_code_extension.md +94 -63
- package/docs/de/intlayer_CMS.md +247 -65
- package/docs/de/releases/v6.md +298 -0
- package/docs/de/roadmap.md +1 -3
- package/docs/de/vs_code_extension.md +89 -58
- package/docs/en/configuration.md +9 -2
- package/docs/en/intlayer_CMS.md +205 -23
- package/docs/en/intlayer_cli.md +4 -4
- package/docs/en/intlayer_visual_editor.md +7 -6
- package/docs/en/intlayer_with_nextjs_14.md +17 -1
- package/docs/en/intlayer_with_nextjs_15.md +17 -1
- package/docs/en/releases/v6.md +268 -0
- package/docs/en/roadmap.md +1 -3
- package/docs/en/vs_code_extension.md +79 -49
- package/docs/en-GB/intlayer_CMS.md +216 -52
- package/docs/en-GB/releases/v6.md +297 -0
- package/docs/en-GB/roadmap.md +1 -3
- package/docs/en-GB/vs_code_extension.md +79 -48
- package/docs/es/intlayer_CMS.md +257 -84
- package/docs/es/releases/v6.md +274 -0
- package/docs/es/roadmap.md +1 -3
- package/docs/es/vs_code_extension.md +90 -60
- package/docs/fr/intlayer_CMS.md +250 -68
- package/docs/fr/releases/v6.md +274 -0
- package/docs/fr/roadmap.md +1 -3
- package/docs/fr/vs_code_extension.md +94 -63
- package/docs/hi/intlayer_CMS.md +253 -77
- package/docs/hi/releases/v6.md +273 -0
- package/docs/hi/roadmap.md +1 -3
- package/docs/hi/vs_code_extension.md +92 -61
- package/docs/it/intlayer_CMS.md +251 -73
- package/docs/it/releases/v6.md +273 -0
- package/docs/it/roadmap.md +1 -3
- package/docs/it/vs_code_extension.md +94 -63
- package/docs/ja/intlayer_CMS.md +282 -97
- package/docs/ja/releases/v6.md +273 -0
- package/docs/ja/roadmap.md +1 -3
- package/docs/ja/vs_code_extension.md +99 -68
- package/docs/ko/intlayer_CMS.md +267 -93
- package/docs/ko/releases/v6.md +273 -0
- package/docs/ko/roadmap.md +1 -3
- package/docs/ko/vs_code_extension.md +88 -57
- package/docs/pt/intlayer_CMS.md +261 -83
- package/docs/pt/releases/v6.md +273 -0
- package/docs/pt/roadmap.md +1 -3
- package/docs/pt/vs_code_extension.md +89 -58
- package/docs/ru/intlayer_CMS.md +240 -65
- package/docs/ru/releases/v6.md +274 -0
- package/docs/ru/roadmap.md +1 -1
- package/docs/ru/vs_code_extension.md +83 -52
- package/docs/tr/intlayer_CMS.md +278 -96
- package/docs/tr/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/tr/intlayer_with_tanstack.md +3 -0
- package/docs/tr/releases/v6.md +273 -0
- package/docs/tr/roadmap.md +1 -1
- package/docs/tr/vs_code_extension.md +100 -71
- package/docs/zh/intlayer_CMS.md +257 -76
- package/docs/zh/releases/v6.md +273 -0
- package/docs/zh/roadmap.md +1 -3
- package/docs/zh/vs_code_extension.md +99 -68
- package/package.json +9 -8
- package/src/blog.ts +1 -1
- package/src/common.ts +2 -6
- package/src/generated/blog.entry.ts +323 -1864
- package/src/generated/docs.entry.ts +1317 -6278
- package/src/generated/frequentQuestions.entry.ts +202 -1183
- package/src/generated/legal.entry.ts +48 -85
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2025-09-22
|
|
3
|
+
updatedAt: 2025-09-22
|
|
4
|
+
title: New Intlayer v6 - What's new?
|
|
5
|
+
description: Discover what's new in Intlayer v6. Major improvements in performance, developer experience, and new features to enhance your internationalisation workflow.
|
|
6
|
+
keywords:
|
|
7
|
+
- Intlayer
|
|
8
|
+
- Localisation
|
|
9
|
+
- Development
|
|
10
|
+
- Performance
|
|
11
|
+
- Developer Experience
|
|
12
|
+
- Features
|
|
13
|
+
- React
|
|
14
|
+
- Next.js
|
|
15
|
+
- JavaScript
|
|
16
|
+
- TypeScript
|
|
17
|
+
slugs:
|
|
18
|
+
- doc
|
|
19
|
+
- releases
|
|
20
|
+
- v6
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
# New Intlayer v6 - What's new?
|
|
24
|
+
|
|
25
|
+
Welcome to Intlayer v6! This release focuses on performance, developer experience, and reliability. Below are the highlights, with migration notes and copy‑pasteable examples.
|
|
26
|
+
|
|
27
|
+
## Highlights
|
|
28
|
+
|
|
29
|
+
- New command: `npx intlayer content test` to detect missing translations
|
|
30
|
+
- New global `autoFill` option to auto‑generate missing translations
|
|
31
|
+
- Fill command defaults to skipping existing translations: `npx intlayer fill`
|
|
32
|
+
- VS Code extension: new Intlayer Activity Bar (Search & Dictionaries), toolbar/context actions, auto‑reveal, Fill/Test commands
|
|
33
|
+
- 10× faster builds thanks to promise parallelisation
|
|
34
|
+
- Remote dictionary caching to avoid refetch at app start
|
|
35
|
+
- Improved logging: set `log.mode: 'verbose'` to inspect behaviour
|
|
36
|
+
- Stronger validation to prevent app crashes on dictionary issues
|
|
37
|
+
- Live updates with CMS using `build.importMode = 'live'` and `pnpm intlayer live`
|
|
38
|
+
- Fixes: Vue.js integration, Lynx adapter, Visual Editor on Windows
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## New: Test missing translations
|
|
43
|
+
|
|
44
|
+
Quickly audit your project to find which keys/locales are missing.
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
npx intlayer content test
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Output:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
pnpm intlayer content test
|
|
54
|
+
Missing translations:
|
|
55
|
+
- blog-data - Japanese (ja), Korean (ko), Chinese (zh), German (de), Italian (it) - src/components/BlogPage/blogData.content.ts
|
|
56
|
+
- demo-page - French (fr), Italian (it) - src/components/DemoPage/demo.content.ts
|
|
57
|
+
- locale-switcher - Italian (it), Portuguese (pt) - src/components/LocaleSwitcher/localeSwitcher.content.ts
|
|
58
|
+
Locales: English (en), Russian (ru), Japanese (ja), French (fr), Korean (ko), Chinese (zh), Spanish (es), German (de), Arabic (ar), Italian (it), British English (en-GB), Portuguese (pt), Hindi (hi)
|
|
59
|
+
Required locales: English (en)
|
|
60
|
+
Missing locales: Japanese (ja), Korean (ko), Chinese (zh), German (de), Italian (it), French (fr), Portuguese (pt)
|
|
61
|
+
Missing required locales: -
|
|
62
|
+
Total missing locales: 7
|
|
63
|
+
Total missing required locales: 0
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
See more options in the CLI docs: [CLI reference](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_cli.md) → "Test missing translations". As well as the [Testing](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/testing.md) guide.
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## New: Global autoFill to complete missing translations
|
|
71
|
+
|
|
72
|
+
You can now enable auto-fill globally so any dictionary with missing translations gets completed automatically.
|
|
73
|
+
|
|
74
|
+
```ts fileName="intlayer.config.ts"
|
|
75
|
+
import { type IntlayerConfig, Locales } from "intlayer";
|
|
76
|
+
|
|
77
|
+
const config: IntlayerConfig = {
|
|
78
|
+
internationalization: {
|
|
79
|
+
locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
|
|
80
|
+
defaultLocale: Locales.ENGLISH,
|
|
81
|
+
requiredLocales: [Locales.ENGLISH, Locales.FRENCH],
|
|
82
|
+
},
|
|
83
|
+
content: {
|
|
84
|
+
// Auto-generate missing translations for all dictionaries
|
|
85
|
+
autoFill: "./{{fileName}}.content.ts",
|
|
86
|
+
//
|
|
87
|
+
// autoFill: "/messages/{{locale}}/{{key}}/{{fileName}}.content.json",
|
|
88
|
+
//
|
|
89
|
+
// autoFill: true, // auto-generate missing translations for all dictionaries like using "./{{fileName}}.content.json"
|
|
90
|
+
//
|
|
91
|
+
// autoFill: {
|
|
92
|
+
// en: "./{{fileName}}.en.content.json",
|
|
93
|
+
// fr: "./{{fileName}}.fr.content.json",
|
|
94
|
+
// es: "./{{fileName}}.es.content.json",
|
|
95
|
+
// },
|
|
96
|
+
},
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
export default config;
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
You can still fine‑tune per dictionary using the `autoFill` field in content files. See the full reference in `doc/autoFill` and `doc/dictionary/content_file`.
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Fill command: safer defaults
|
|
107
|
+
|
|
108
|
+
The fill command now, by default, only fills missing translations and skips existing content.
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
npx intlayer fill
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
Affected dictionary keys for processing: access-key-creation-form-schema, doc-search-metadata, doc-search-page
|
|
116
|
+
- [access-key-creation-form-schema] Dictionary has no file path. Skipping.
|
|
117
|
+
- [access-key-creation-form-schema] Processing content declaration: src/components/Dashboard/ProjectForm/AccessKey/useAccessKeyCreationFormSchema.content.ts
|
|
118
|
+
- [access-key-creation-form-schema] No locales to fill - Skipping dictionary
|
|
119
|
+
- [doc-search-metadata] Dictionary has no file path. Skipping.
|
|
120
|
+
- [doc-search-metadata] Processing content declaration: src/app/[locale]/(docs)/doc/search/metadata.content.ts
|
|
121
|
+
- [doc-search-metadata] No locales to fill - Skipping dictionary
|
|
122
|
+
- [doc-search-page] Dictionary has no file path. Skipping.
|
|
123
|
+
- [doc-search-page] Processing content declaration: src/app/[locale]/(docs)/doc/search/page.content.ts
|
|
124
|
+
- [doc-search-page] [Russian (ru)] Preparing translation for dictionary from English (en) to Russian (ru)
|
|
125
|
+
[intlayer] Applied Prettier formatting to src/app/[locale]/(docs)/doc/search/page.content.ts
|
|
126
|
+
- [doc-search-page] Content declaration written to src/app/[locale]/(docs)/doc/search/page.content.ts
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
CI examples are available in [CI/CD](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/CI_CD.md).
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Updated VS Code extension
|
|
134
|
+
|
|
135
|
+
The extension now includes a dedicated Intlayer tab in the Activity Bar and several workflow improvements:
|
|
136
|
+
|
|
137
|
+
- Intlayer Activity Bar with two views:
|
|
138
|
+
- Search webview (`intlayer.searchBar`) for live dictionary/content search
|
|
139
|
+
- Dictionaries tree (`intlayer.dictionaries`) listing environments, dictionaries, and contributing files
|
|
140
|
+
- Toolbar on Dictionaries view: Build, Pull, Push, Fill, Refresh, Test, Create Dictionary File
|
|
141
|
+
- Context menus: Pull/Push on dictionaries; Fill on files
|
|
142
|
+
- Auto‑reveal: the current editor file is highlighted in the Dictionaries tree when applicable
|
|
143
|
+
- New commands available from the Command Palette: Fill Dictionaries and Test Dictionaries
|
|
144
|
+
|
|
145
|
+
See details in the [Official VS Code Extension](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/vs_code_extension.md) documentation.
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## Performance: 10× faster
|
|
150
|
+
|
|
151
|
+
- Parallel resolution of local and remote dictionaries
|
|
152
|
+
- Remote dictionaries are cached to avoid re‑fetching at app startup
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
npx intlayer build
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
Output:
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
[intlayer] Preparing Intlayer (v6.0.1)
|
|
162
|
+
[intlayer] Dictionaries:
|
|
163
|
+
[intlayer] ✓ Local content: 163/163
|
|
164
|
+
[intlayer] ✓ Remote content: 100/100
|
|
165
|
+
[intlayer] - access-key-creation-form [local: ✔ built] [distant: ✔ imported]
|
|
166
|
+
[intlayer] - access-key-creation-form-schema [local: ✔ built] [distant: ✔ imported]
|
|
167
|
+
[intlayer] - access-key-form [local: ✔ built] [distant: ✔ imported]
|
|
168
|
+
[intlayer] - ai-ab-testing-section [distant: ✔ imported]
|
|
169
|
+
[intlayer] - application-not-running-view [local: ✔ built] [distant: ✔ imported]
|
|
170
|
+
[intlayer] - application-template-message [local: ✔ built] [distant: ✔ fetched]
|
|
171
|
+
[intlayer] - aside-navigation [local: ✔ built] [distant: ✔ imported]
|
|
172
|
+
[intlayer] - ask-reset-password [local: ✔ built] [distant: ✔ imported]
|
|
173
|
+
[intlayer] - ask-reset-password-schema [local: ✔ built] [distant: ✔ imported]
|
|
174
|
+
[intlayer] - autocompletion-section [local: ✔ built] [distant: ✔ fetched]
|
|
175
|
+
[intlayer] - available-techno-section [local: ✔ built] [distant: ✔ imported]
|
|
176
|
+
[intlayer] - blog-data [local: ✔ built]
|
|
177
|
+
[intlayer] - blog-metadata [local: ✔ built]
|
|
178
|
+
[intlayer] - blog-nav-list [local: ✔ built] [distant: ✔ imported]
|
|
179
|
+
[intlayer] - blog-page [distant: ✔ fetched]
|
|
180
|
+
[intlayer] - blog-search-metadata [local: ✔ built] [distant: ✔ imported]
|
|
181
|
+
[intlayer] - blog-search-page [local: ✔ built] [distant: ✔ imported]
|
|
182
|
+
...
|
|
183
|
+
[intlayer] Content loaded (Total: 8401ms - Local: 4050ms - Remote: 4222ms)
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## Logging improvements
|
|
189
|
+
|
|
190
|
+
The logging system has been improved to provide more detailed information about what happens during build and runtime transformations.
|
|
191
|
+
|
|
192
|
+
> Enable verbose logs to better understand what happens during build and runtime transformations.
|
|
193
|
+
|
|
194
|
+
```ts fileName="intlayer.config.ts"
|
|
195
|
+
export default {
|
|
196
|
+
log: {
|
|
197
|
+
mode: "verbose", // options: "default" | "verbose" | "disabled"
|
|
198
|
+
},
|
|
199
|
+
};
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
See [Configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md) for all logging options.
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
## Stronger validation
|
|
207
|
+
|
|
208
|
+
Dictionary processing now performs more robust validation. When a dictionary fails to process, Intlayer avoids breaking your application and surfaces actionable errors.
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
## Live updates with CMS (Production‑safe)
|
|
213
|
+
|
|
214
|
+
The logging system has been improved to provide more detailed information about what happens during build and runtime transformations.
|
|
215
|
+
|
|
216
|
+
> Enable verbose logs to better understand what happens during build and runtime transformations.
|
|
217
|
+
|
|
218
|
+
```ts fileName="intlayer.config.ts"
|
|
219
|
+
export default {
|
|
220
|
+
log: {
|
|
221
|
+
mode: "verbose", // options: "default" | "verbose" | "disabled"
|
|
222
|
+
},
|
|
223
|
+
};
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
See [Configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md) for all logging options.
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
|
|
230
|
+
## Stronger validation
|
|
231
|
+
|
|
232
|
+
Dictionary processing now performs more robust validation. When a dictionary fails to process, Intlayer avoids breaking your application and surfaces actionable errors.
|
|
233
|
+
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
## Live updates with CMS (Production‑safe)
|
|
237
|
+
|
|
238
|
+
Serve live content updates (e.g., editorial updates) in production without rebuilding your application.
|
|
239
|
+
|
|
240
|
+
1. Enable live import mode:
|
|
241
|
+
|
|
242
|
+
```ts fileName="intlayer.config.ts"
|
|
243
|
+
import { type IntlayerConfig } from "intlayer";
|
|
244
|
+
|
|
245
|
+
const config: IntlayerConfig = {
|
|
246
|
+
build: {
|
|
247
|
+
importMode: "live", // "static" | "dynamic" | "live"
|
|
248
|
+
},
|
|
249
|
+
editor: {
|
|
250
|
+
liveSync: true, // enable live sync server side
|
|
251
|
+
},
|
|
252
|
+
};
|
|
253
|
+
|
|
254
|
+
export default config;
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
2. Run your app and live process side‑by‑side:
|
|
258
|
+
|
|
259
|
+
```bash
|
|
260
|
+
npx intlayer live --process 'vite preview'
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
Notes:
|
|
264
|
+
|
|
265
|
+
- Only dictionaries flagged to use live mode will be fetched live. Others are optimised for performance.
|
|
266
|
+
- Falls back to dynamic import if the live API isn’t reachable.
|
|
267
|
+
|
|
268
|
+
See [CMS and Live Sync](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_CMS.md) and [Configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md) for complete guidance.
|
|
269
|
+
|
|
270
|
+
---
|
|
271
|
+
|
|
272
|
+
## Migration notes
|
|
273
|
+
|
|
274
|
+
- Removed: `dictionaryOutput` (previously `i18next` or `next-intl`). This will return as pluggable adapters in future versions. Remove the field from your config.
|
|
275
|
+
- Related removal: `i18nextResourcesDir` (see `doc/configuration` changelog).
|
|
276
|
+
- Prefer the new global `content.autoFill` option to generate missing translations at scale.
|
|
277
|
+
- Use `npx intlayer content test` to gate PRs on missing translations.
|
|
278
|
+
- For verbose diagnostics, set `log.mode = 'verbose'`.
|
|
279
|
+
|
|
280
|
+
---
|
|
281
|
+
|
|
282
|
+
## Fixes
|
|
283
|
+
|
|
284
|
+
- Vue.js integration stability
|
|
285
|
+
- Lynx adapter improvements
|
|
286
|
+
- Visual Editor on Windows
|
|
287
|
+
|
|
288
|
+
---
|
|
289
|
+
|
|
290
|
+
## Useful links
|
|
291
|
+
|
|
292
|
+
- [CLI reference](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_cli.md)
|
|
293
|
+
- [Auto‑fill](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/autoFill.md)
|
|
294
|
+
- [Configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md)
|
|
295
|
+
- [Content file reference](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/content_file.md)
|
|
296
|
+
- [Official VS Code Extension](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/vs_code_extension.md)
|
|
297
|
+
- [CMS and Live Sync](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_CMS.md)
|
package/docs/en-GB/roadmap.md
CHANGED
|
@@ -112,18 +112,16 @@ Intlayer provides various methods to insert and manage dynamic content, ensuring
|
|
|
112
112
|
Intlayer supports **TypeScript** (also JavaScript) and **JSON** for declaring content.
|
|
113
113
|
|
|
114
114
|
- **TypeScript**:
|
|
115
|
-
|
|
116
115
|
- Ensures your content structure is correct and that no translations are missing.
|
|
117
116
|
- Offers strict or more flexible validation modes.
|
|
118
117
|
- Allows dynamic data fetching from variables, functions, or external APIs.
|
|
119
118
|
|
|
120
119
|
- **JSON**:
|
|
121
|
-
|
|
122
120
|
- Makes it easy to integrate with external tools (such as visual editors) due to its standardised format.
|
|
123
121
|
|
|
124
122
|
> Resources:
|
|
125
123
|
>
|
|
126
|
-
> - [Content Declaration Formats](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dictionary/
|
|
124
|
+
> - [Content Declaration Formats](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dictionary/content_file.md)
|
|
127
125
|
|
|
128
126
|
### 7. Purging, bundle optimisation and dynamic imports
|
|
129
127
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-03-17
|
|
3
|
-
updatedAt: 2025-
|
|
3
|
+
updatedAt: 2025-09-22
|
|
4
4
|
title: Official VS Code Extension
|
|
5
5
|
description: Learn how to use the Intlayer extension in VS Code to enhance your development workflow. Quickly navigate between localised content and manage your dictionaries efficiently.
|
|
6
6
|
keywords:
|
|
@@ -21,7 +21,7 @@ slugs:
|
|
|
21
21
|
|
|
22
22
|
## Overview
|
|
23
23
|
|
|
24
|
-
[**Intlayer**](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension) is the official Visual Studio Code extension for **Intlayer**, designed to
|
|
24
|
+
[**Intlayer**](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension) is the official Visual Studio Code extension for **Intlayer**, designed to improve the developer experience when working with localised content in your projects.
|
|
25
25
|
|
|
26
26
|

|
|
27
27
|
|
|
@@ -31,7 +31,7 @@ Extension link: [https://marketplace.visualstudio.com/items?itemName=Intlayer.in
|
|
|
31
31
|
|
|
32
32
|
### Instant Navigation
|
|
33
33
|
|
|
34
|
-
**Go to Definition Support** – Use
|
|
34
|
+
**Go to Definition Support** – Use `⌘ + Click` (Mac) or `Ctrl + Click` (Windows/Linux) on a `useIntlayer` key to open the corresponding content file instantly.
|
|
35
35
|
**Seamless Integration** – Works effortlessly with **react-intlayer** and **next-intlayer** projects.
|
|
36
36
|
**Multi-language Support** – Supports localised content across different languages.
|
|
37
37
|
**VS Code Integration** – Smoothly integrates with VS Code’s navigation and command palette.
|
|
@@ -40,18 +40,66 @@ Extension link: [https://marketplace.visualstudio.com/items?itemName=Intlayer.in
|
|
|
40
40
|
|
|
41
41
|
Manage your content dictionaries directly from VS Code:
|
|
42
42
|
|
|
43
|
-
- **Build Dictionaries**
|
|
44
|
-
- **Push Dictionaries**
|
|
45
|
-
- **Pull Dictionaries**
|
|
43
|
+
- **Build Dictionaries** – Generate content files based on your project structure.
|
|
44
|
+
- **Push Dictionaries** – Upload the latest dictionary content to your repository.
|
|
45
|
+
- **Pull Dictionaries** – Synchronise the latest dictionary content from your repository to your local environment.
|
|
46
|
+
- **Fill Dictionaries** – Populate dictionaries with content from your project.
|
|
47
|
+
- **Test Dictionaries** – Identify missing or incomplete translations.
|
|
46
48
|
|
|
47
49
|
### Content Declaration Generator
|
|
48
50
|
|
|
49
51
|
Easily generate structured dictionary files in different formats:
|
|
50
52
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
If you are currently working on a component, it will generate the `.content.{ts,tsx,js,jsx,mjs,cjs,json}` file for you.
|
|
54
|
+
|
|
55
|
+
Example of component:
|
|
56
|
+
|
|
57
|
+
```tsx fileName="src/components/MyComponent/index.tsx"
|
|
58
|
+
const MyComponent = () => {
|
|
59
|
+
const { myTranslatedContent } = useIntlayer("my-component");
|
|
60
|
+
|
|
61
|
+
return <span>{myTranslatedContent}</span>;
|
|
62
|
+
};
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Generated file in TypeScript format:
|
|
66
|
+
|
|
67
|
+
```tsx fileName="src/components/MyComponent/index.content.ts"
|
|
68
|
+
import { t, type Dictionary } from "intlayer";
|
|
69
|
+
|
|
70
|
+
const componentContent = {
|
|
71
|
+
key: "my-component",
|
|
72
|
+
content: {
|
|
73
|
+
myTranslatedContent: t({
|
|
74
|
+
en: "Hello World",
|
|
75
|
+
es: "Hola Mundo",
|
|
76
|
+
fr: "Bonjour le monde",
|
|
77
|
+
}),
|
|
78
|
+
},
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
export default componentContent;
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Available formats:
|
|
85
|
+
|
|
86
|
+
- **TypeScript (`.ts`)**
|
|
87
|
+
- **ES Module (`.esm`)**
|
|
88
|
+
- **CommonJS (`.cjs`)**
|
|
89
|
+
- **JSON (`.json`)**
|
|
90
|
+
|
|
91
|
+
### Intlayer Tab (Activity Bar)
|
|
92
|
+
|
|
93
|
+
Open the Intlayer tab by clicking the Intlayer icon in the VS Code Activity Bar. It contains two views:
|
|
94
|
+
|
|
95
|
+
- **Search**: A live search bar to quickly filter dictionaries and their content. Typing updates the results instantly.
|
|
96
|
+
- **Dictionaries**: A tree view of your environments/projects, dictionary keys, and the files contributing entries. You can:
|
|
97
|
+
- Click a file to open it in the editor.
|
|
98
|
+
- Use the toolbar to run actions: Build, Pull, Push, Fill, Refresh, Test, and Create Dictionary File.
|
|
99
|
+
- Use the context menu for item‑specific actions:
|
|
100
|
+
- On a dictionary: Pull or Push
|
|
101
|
+
- On a file: Fill Dictionary
|
|
102
|
+
- When you switch editors, the tree will reveal the matching file if it belongs to a dictionary.
|
|
55
103
|
|
|
56
104
|
## Installation
|
|
57
105
|
|
|
@@ -62,12 +110,6 @@ You can install **Intlayer** directly from the VS Code Marketplace:
|
|
|
62
110
|
3. Search for **"Intlayer"**.
|
|
63
111
|
4. Click **Install**.
|
|
64
112
|
|
|
65
|
-
Alternatively, install it via the command line:
|
|
66
|
-
|
|
67
|
-
```sh
|
|
68
|
-
code --install-extension intlayer
|
|
69
|
-
```
|
|
70
|
-
|
|
71
113
|
## Usage
|
|
72
114
|
|
|
73
115
|
### Quick Navigation
|
|
@@ -84,6 +126,14 @@ code --install-extension intlayer
|
|
|
84
126
|
|
|
85
127
|
### Managing Content Dictionaries
|
|
86
128
|
|
|
129
|
+
### Intlayer Tab (Activity Bar)
|
|
130
|
+
|
|
131
|
+
Use the side tab to browse and manage dictionaries:
|
|
132
|
+
|
|
133
|
+
- Open the Intlayer icon in the Activity Bar.
|
|
134
|
+
- In **Search**, type to filter dictionaries and entries in real time.
|
|
135
|
+
- In **Dictionaries**, browse environments, dictionaries, and files. Use the toolbar for Build, Pull, Push, Fill, Refresh, Test, and Create Dictionary File. Right‑click for context actions (Pull/Push on dictionaries, Fill on files). The current editor file auto‑reveals in the tree when applicable.
|
|
136
|
+
|
|
87
137
|
#### Building Dictionaries
|
|
88
138
|
|
|
89
139
|
Generate all dictionary content files with:
|
|
@@ -110,43 +160,24 @@ Sync the latest dictionary content:
|
|
|
110
160
|
2. Search for **Pull Dictionaries**.
|
|
111
161
|
3. Choose the dictionaries to pull.
|
|
112
162
|
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
Want to contribute? We welcome community contributions!
|
|
116
|
-
|
|
117
|
-
Repo URL: https://github.com/aymericzip/intlayer-vs-code-extension
|
|
163
|
+
#### Filling Dictionaries
|
|
118
164
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
Clone the repository and install dependencies:
|
|
122
|
-
|
|
123
|
-
```sh
|
|
124
|
-
git clone https://github.com/aymericzip/intlayer-vs-code-extension.git
|
|
125
|
-
cd intlayer-vs-code-extension
|
|
126
|
-
npm install
|
|
127
|
-
```
|
|
165
|
+
Fill dictionaries with content from your project:
|
|
128
166
|
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
1. Open the project in **VS Code**.
|
|
134
|
-
2. Press `F5` to launch a new **Extension Development Host** window.
|
|
135
|
-
|
|
136
|
-
### Submit a Pull Request
|
|
137
|
-
|
|
138
|
-
If you improve the extension, submit a PR on [GitHub](https://github.com/aymericzip/intlayer-vs-code-extension).
|
|
139
|
-
|
|
140
|
-
## Feedback & Issues
|
|
141
|
-
|
|
142
|
-
Found a bug or have a feature request? Open an issue on our **GitHub repository**:
|
|
167
|
+
1. Open the **Command Palette**.
|
|
168
|
+
2. Search for **Fill Dictionaries**.
|
|
169
|
+
3. Run the command to populate dictionaries.
|
|
143
170
|
|
|
144
|
-
|
|
171
|
+
#### Testing Dictionaries
|
|
145
172
|
|
|
146
|
-
|
|
173
|
+
Validate dictionaries and find missing translations:
|
|
147
174
|
|
|
148
|
-
|
|
175
|
+
1. Open the **Command Palette**.
|
|
176
|
+
2. Search for **Test Dictionaries**.
|
|
177
|
+
3. Review the reported issues and fix as needed.
|
|
149
178
|
|
|
150
179
|
## Doc History
|
|
151
180
|
|
|
152
|
-
|
|
181
|
+
| Version | Date | Changes |
|
|
182
|
+
| ------- | ---------- | ------------ |
|
|
183
|
+
| 5.5.10 | 2025-06-29 | Init history |
|