nuxt-i18n-micro 3.29.4 → 3.29.6
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/README.md +15 -17
- package/dist/client/200.html +1 -1
- package/dist/client/404.html +1 -1
- package/dist/client/_nuxt/{CZxMDymS.js → BpY-pULJ.js} +2 -2
- package/dist/client/_nuxt/{CSbZDNyO.js → DSTZVpLC.js} +1 -1
- package/dist/client/_nuxt/{BlsWt_np.js → P5TxJjhx.js} +1 -1
- package/dist/client/_nuxt/builds/latest.json +1 -1
- package/dist/client/_nuxt/builds/meta/f3c72715-4078-46f0-b763-6a6bcd91acd1.json +1 -0
- package/dist/client/_nuxt/error-404.DJpOK4i4.css +1 -0
- package/dist/client/_nuxt/error-500.DRe0f5YQ.css +1 -0
- package/dist/client/index.html +1 -1
- package/dist/module.json +1 -1
- package/dist/module.mjs +77 -28
- package/dist/runtime/composables/useLocaleHead.js +18 -24
- package/dist/runtime/plugins/01.plugin.d.ts +8 -7
- package/dist/runtime/server/plugins/watcher.dev.js +32 -4
- package/dist/runtime/utils/nuxt-i18n.d.ts +6 -5
- package/dist/runtime/utils/nuxt-i18n.js +1 -1
- package/internals.d.mts +1 -0
- package/package.json +17 -13
- package/dist/client/_nuxt/builds/meta/7a8cab88-a568-460d-8a67-5955e9b3c5ff.json +0 -1
- package/dist/client/_nuxt/error-404.BRCCa7jH.css +0 -1
- package/dist/client/_nuxt/error-500.C7JgQlK0.css +0 -1
package/README.md
CHANGED
|
@@ -22,38 +22,36 @@ The `Nuxt I18n Micro` module was created to address critical performance issues
|
|
|
22
22
|
|
|
23
23
|
### Performance Comparison
|
|
24
24
|
|
|
25
|
-
To showcase the efficiency of `Nuxt I18n Micro`, we ran the same fixture suite via `pnpm test:performance`
|
|
25
|
+
To showcase the efficiency of `Nuxt I18n Micro`, we ran the same fixture suite via `pnpm test:performance` against **`@nuxtjs/i18n@10.6.0`** on the same hardware. We also include a **plain-nuxt** baseline (no i18n module) to measure the real overhead.
|
|
26
26
|
|
|
27
27
|
#### Build Time and Resource Consumption
|
|
28
28
|
|
|
29
|
-
> **Note:** The `plain-nuxt` baseline is a minimal implementation created solely for benchmarking purposes. It loads data directly from JSON files without any i18n logic. Latest
|
|
29
|
+
> **Note:** The `plain-nuxt` baseline is a minimal implementation created solely for benchmarking purposes. It loads data directly from JSON files without any i18n logic. Latest published comparison: `@nuxtjs/i18n@10.6.0`, **mean of 3 consecutive runs** (forced rebuilds), real module dist, Artillery `--load full` (warm 6s@6 + 60s@60 uncapped) — see `docs/guide/performance-results.md` and `docs/guide/performance-methodology.md`.
|
|
30
30
|
|
|
31
31
|
| Project | Build Time | Code Bundle | Max Memory | Max CPU |
|
|
32
32
|
|---------|------------|-------------|------------|---------|
|
|
33
|
-
| **plain-nuxt** (baseline) | 5.
|
|
34
|
-
| **i18n-micro** | 5.
|
|
35
|
-
| **@nuxtjs/i18n v10.6** | 8.
|
|
33
|
+
| **plain-nuxt** (baseline) | 5.07s | 1.22 MB | 859 MB | 224% |
|
|
34
|
+
| **i18n-micro** | 5.01s | 1.44 MB | 997 MB | 225% |
|
|
35
|
+
| **@nuxtjs/i18n v10.6** | 8.23s | 1.9 MB | 1,292 MB | 225% |
|
|
36
36
|
|
|
37
37
|
> **Code Bundle** = JS/CSS only (excludes classified translation payloads, including `@nuxtjs/i18n` `chunks/raw/*`). Older tables that showed ~15 MB “code” for v10.6 were counting message chunks as app code.
|
|
38
38
|
|
|
39
|
-
- **i18n-micro vs baseline**: ≈ same build time, +0.
|
|
40
|
-
- **@nuxtjs/i18n v10.6 vs baseline**: +3.
|
|
39
|
+
- **i18n-micro vs baseline**: ≈ same build time, +0.22 MB code, +138 MB peak RSS
|
|
40
|
+
- **@nuxtjs/i18n v10.6 vs baseline**: +3.16s build, +0.68 MB code, +433 MB peak RSS
|
|
41
41
|
|
|
42
42
|
#### Stress Test Results (Requests per Second)
|
|
43
43
|
|
|
44
|
-
| Project | Avg Response (Artillery) | RPS (Artillery) |
|
|
45
|
-
|
|
46
|
-
| **plain-nuxt** |
|
|
47
|
-
| **i18n-micro** |
|
|
48
|
-
| **@nuxtjs/i18n v10.6** |
|
|
44
|
+
| Project | Avg Response (Artillery) | RPS (Artillery) |
|
|
45
|
+
|---------|--------------------------|-----------------|
|
|
46
|
+
| **plain-nuxt** | 2,087 ms | 102 |
|
|
47
|
+
| **i18n-micro** | 583 ms | 230 |
|
|
48
|
+
| **@nuxtjs/i18n v10.6** | 1,268 ms | 126 |
|
|
49
49
|
|
|
50
50
|
#### Comparison: `@nuxtjs/i18n` v10.6 vs i18n-micro
|
|
51
51
|
|
|
52
|
-
- **
|
|
53
|
-
- **
|
|
54
|
-
- **
|
|
55
|
-
- **Average Response Time (Artillery)**: 473 ms faster (483 ms vs 956 ms)
|
|
56
|
-
- **Requests Per Second (Artillery)**: 132 more (275 vs 143)
|
|
52
|
+
- **Build Time**: 3.22s faster (5.01s vs 8.23s)
|
|
53
|
+
- **Average Response Time (Artillery)**: 685 ms faster (583 ms vs 1,268 ms)
|
|
54
|
+
- **Requests Per Second (Artillery)**: 104 more (230 vs 126)
|
|
57
55
|
|
|
58
56
|
Micro leads on build cost and especially under load. See the [full benchmark report](https://s00d.github.io/nuxt-i18n-micro/guide/performance-results) for methodology and charts.
|
|
59
57
|
|
package/dist/client/200.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-i18n-micro/_nuxt/
|
|
1
|
+
<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-i18n-micro/_nuxt/BpY-pULJ.js"}}</script><link rel="stylesheet" href="/__nuxt-i18n-micro/_nuxt/entry.CJGrD2VA.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-i18n-micro/_nuxt/BpY-pULJ.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-i18n-micro/_nuxt/BAu8wLxk.js"><script type="module" src="/__nuxt-i18n-micro/_nuxt/BpY-pULJ.js" crossorigin></script><link rel="prefetch" as="style" crossorigin href="/__nuxt-i18n-micro/_nuxt/error-404.DJpOK4i4.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-i18n-micro/_nuxt/P5TxJjhx.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-i18n-micro/_nuxt/Bo5omLnI.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-i18n-micro/_nuxt/error-500.DRe0f5YQ.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-i18n-micro/_nuxt/DSTZVpLC.js"></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-i18n-micro",buildId:"f3c72715-4078-46f0-b763-6a6bcd91acd1",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1790267903272,false]</script></body></html>
|
package/dist/client/404.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-i18n-micro/_nuxt/
|
|
1
|
+
<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__nuxt-i18n-micro/_nuxt/BpY-pULJ.js"}}</script><link rel="stylesheet" href="/__nuxt-i18n-micro/_nuxt/entry.CJGrD2VA.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__nuxt-i18n-micro/_nuxt/BpY-pULJ.js"><link rel="modulepreload" as="script" crossorigin href="/__nuxt-i18n-micro/_nuxt/BAu8wLxk.js"><script type="module" src="/__nuxt-i18n-micro/_nuxt/BpY-pULJ.js" crossorigin></script><link rel="prefetch" as="style" crossorigin href="/__nuxt-i18n-micro/_nuxt/error-404.DJpOK4i4.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-i18n-micro/_nuxt/P5TxJjhx.js"><link rel="prefetch" as="script" crossorigin href="/__nuxt-i18n-micro/_nuxt/Bo5omLnI.js"><link rel="prefetch" as="style" crossorigin href="/__nuxt-i18n-micro/_nuxt/error-500.DRe0f5YQ.css"><link rel="prefetch" as="script" crossorigin href="/__nuxt-i18n-micro/_nuxt/DSTZVpLC.js"></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-i18n-micro",buildId:"f3c72715-4078-46f0-b763-6a6bcd91acd1",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1790267903272,false]</script></body></html>
|