News

v2.0.0

Release notes: v2.0.0 — Dev HMR for Translations

Date: 2025-10-30

Version: v2.0.0

v2.0.0 release

We’re introducing server‑side HMR for translation files in development. When a JSON translation changes, the server cache invalidates only the affected keys, and subsequent requests immediately receive fresh data—no restarts required.

What’s New?

  • Server‑side HMR for translation files
  • Instant cache invalidation per page/locale
  • Seamless DX while editing content

How it works

  • Watcher in src/runtime/server/plugins/watcher.dev.ts observes <rootDir>/<translationDir>/**/*.json
  • Page files (e.g., pages/<page>/<locale>.json) invalidate _locales:merged:<page>:<locale>
  • Root-level files (e.g., <locale>.json) invalidate all merged keys for that locale
  • Auto‑registered from src/module.ts in dev when experimental.hmr !== false

Configuration

export default defineNuxtConfig({
  i18n: {
    experimental: { hmr: true }, // default in dev
  },
})