nuxt-i18n-micro 3.2.4 → 3.3.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/README.md +24 -15
- package/dist/client/200.html +1 -1
- package/dist/client/404.html +1 -1
- package/dist/client/_nuxt/CPIcll7P.js +1 -0
- package/dist/client/_nuxt/{BGh93ua4.js → C_iIToZW.js} +9 -11
- package/dist/client/_nuxt/{BHdvmNAL.js → DU8MOPKR.js} +1 -1
- package/dist/client/_nuxt/builds/latest.json +1 -1
- package/dist/client/_nuxt/builds/meta/7af9cef1-a153-4ef4-bce0-e0bffd41cb41.json +1 -0
- package/dist/client/_nuxt/{entry.Kj_DYE7z.css → entry.CT2N5IzL.css} +1 -1
- package/dist/client/_nuxt/error-404.DotYE5uV.css +1 -0
- package/dist/client/_nuxt/error-500.C1UsO9me.css +1 -0
- package/dist/client/_nuxt/{DDGd_lid.js → zD6bdx6d.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/module.json +1 -1
- package/dist/module.mjs +9 -7
- package/dist/runtime/components/i18n-link.vue +1 -1
- package/dist/runtime/plugins/01.plugin.d.ts +8 -6
- package/dist/runtime/plugins/01.plugin.js +139 -134
- package/dist/runtime/plugins/06.redirect.js +184 -0
- package/dist/runtime/server/middleware/i18n.global.js +15 -163
- package/dist/runtime/server/routes/i18n.d.ts +2 -1
- package/dist/runtime/server/routes/i18n.js +4 -4
- package/dist/runtime/server/utils/server-loader.d.ts +1 -0
- package/dist/runtime/server/utils/server-loader.js +20 -2
- package/dist/runtime/utils/storage.d.ts +5 -0
- package/dist/runtime/utils/storage.js +15 -5
- package/package.json +9 -5
- package/dist/client/_nuxt/DCzpQabR.js +0 -1
- package/dist/client/_nuxt/builds/meta/87f9a27e-6790-4bcc-9e43-9e546b53a4a0.json +0 -1
- package/dist/client/_nuxt/error-404.Gqn9dG-k.css +0 -1
- package/dist/client/_nuxt/error-500.B7WZZ6sx.css +0 -1
- package/dist/runtime/plugins/06.client-redirect.client.js +0 -50
- package/dist/runtime/utils/index.d.ts +0 -1
- package/dist/runtime/utils/index.js +0 -0
- /package/dist/runtime/plugins/{06.client-redirect.client.d.ts → 06.redirect.d.ts} +0 -0
package/README.md
CHANGED
|
@@ -28,28 +28,33 @@ To showcase the efficiency of `Nuxt I18n Micro`, we conducted tests under identi
|
|
|
28
28
|
|
|
29
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. Real-world applications will have more complexity and higher resource usage.
|
|
30
30
|
|
|
31
|
-
| Project | Build Time | Max Memory | Max CPU |
|
|
32
|
-
|
|
33
|
-
| **plain-nuxt** (baseline) |
|
|
34
|
-
| **i18n-micro** |
|
|
35
|
-
| **i18n v10** |
|
|
31
|
+
| Project | Build Time | Code Bundle | Max Memory | Max CPU |
|
|
32
|
+
|---------|------------|-------------|------------|---------|
|
|
33
|
+
| **plain-nuxt** (baseline) | 5.71s | 1.35 MB | 674 MB | 240% |
|
|
34
|
+
| **i18n-micro** | 23.47s | 1.5 MB | 1,658 MB | 208% |
|
|
35
|
+
| **i18n v10** | 84.91s | 19.24 MB | 9,528 MB | 439% |
|
|
36
36
|
|
|
37
|
-
|
|
38
|
-
|
|
37
|
+
> **Code Bundle** = JavaScript/CSS code only (excludes translation JSON files).
|
|
38
|
+
> i18n-micro stores translations as lazy-loaded JSON files, keeping the code bundle minimal.
|
|
39
|
+
|
|
40
|
+
- **i18n-micro vs baseline**: +17.76s build, +0.15 MB code, +984 MB memory
|
|
41
|
+
- **i18n v10 vs baseline**: +79.20s build, +17.89 MB code, +8,854 MB memory
|
|
39
42
|
|
|
40
43
|
#### Stress Test Results (Requests per Second)
|
|
41
44
|
|
|
42
|
-
| Project | Avg Response | RPS | Max Memory |
|
|
43
|
-
|
|
44
|
-
| **plain-nuxt** |
|
|
45
|
-
| **i18n-micro** |
|
|
46
|
-
| **i18n v10** |
|
|
45
|
+
| Project | Avg Response | RPS (Artillery) | Max Memory |
|
|
46
|
+
|---------|--------------|-----------------|------------|
|
|
47
|
+
| **plain-nuxt** | 544 ms | 228 | 340 MB |
|
|
48
|
+
| **i18n-micro** | 411 ms | 292 | 347 MB |
|
|
49
|
+
| **i18n v10** | 1,363 ms | 51 | 1,243 MB |
|
|
47
50
|
|
|
48
51
|
#### Comparison: i18n v10 vs i18n-micro
|
|
49
52
|
|
|
50
|
-
- **
|
|
51
|
-
- **
|
|
52
|
-
- **
|
|
53
|
+
- **Code Bundle**: 17.74 MB smaller (i18n-micro: 1.5 MB vs i18n v10: 19.24 MB)
|
|
54
|
+
- **Build Time**: 61.44s faster (i18n-micro: 23.47s vs i18n v10: 84.91s)
|
|
55
|
+
- **Max Memory (build)**: 7,870 MB less (i18n-micro: 1,658 MB vs i18n v10: 9,528 MB)
|
|
56
|
+
- **Average Response Time**: 952 ms faster (i18n-micro: 411 ms vs i18n v10: 1,363 ms)
|
|
57
|
+
- **Requests Per Second**: 241 more (i18n-micro: 292 vs i18n v10: 51)
|
|
53
58
|
|
|
54
59
|
These results clearly demonstrate that `Nuxt I18n Micro` significantly outperforms the original module in every critical area while staying close to the plain Nuxt baseline.
|
|
55
60
|
|
|
@@ -91,6 +96,10 @@ export default defineNuxtConfig({
|
|
|
91
96
|
|
|
92
97
|
That's it! You're now ready to use Nuxt I18n Micro in your Nuxt app.
|
|
93
98
|
|
|
99
|
+
## Star History
|
|
100
|
+
|
|
101
|
+
[](https://www.star-history.com/#s00d/nuxt-i18n-micro&type=date&legend=top-left)
|
|
102
|
+
|
|
94
103
|
|
|
95
104
|
[Docs](https://s00d.github.io/nuxt-i18n-micro/)
|
|
96
105
|
|
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"><link rel="stylesheet" href="/__NUXT_DEVTOOLS_I18N_BASE__/_nuxt/entry.
|
|
1
|
+
<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/__NUXT_DEVTOOLS_I18N_BASE__/_nuxt/entry.CT2N5IzL.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_I18N_BASE__/_nuxt/C_iIToZW.js"><script type="module" src="/__NUXT_DEVTOOLS_I18N_BASE__/_nuxt/C_iIToZW.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__NUXT_DEVTOOLS_I18N_BASE__/",buildId:"7af9cef1-a153-4ef4-bce0-e0bffd41cb41",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1770392966749,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"><link rel="stylesheet" href="/__NUXT_DEVTOOLS_I18N_BASE__/_nuxt/entry.
|
|
1
|
+
<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/__NUXT_DEVTOOLS_I18N_BASE__/_nuxt/entry.CT2N5IzL.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_I18N_BASE__/_nuxt/C_iIToZW.js"><script type="module" src="/__NUXT_DEVTOOLS_I18N_BASE__/_nuxt/C_iIToZW.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__NUXT_DEVTOOLS_I18N_BASE__/",buildId:"7af9cef1-a153-4ef4-bce0-e0bffd41cb41",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1770392966749,false]</script></body></html>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{D as r,a as o,E as u,F as c,G as d}from"./C_iIToZW.js";function h(n){const t=n||o();return t.ssrContext?.head||t.runWithContext(()=>{if(u()){const e=c(d);if(!e)throw new Error("[nuxt] [unhead] Missing Unhead instance.");return e}})}function x(n,t={}){const e=t.head||h(t.nuxt);return r(n,{head:e,...t})}const f=(n,t)=>{const e=n.__vccOpts||n;for(const[a,s]of t)e[a]=s;return e};export{f as _,x as u};
|