![Create React App Officially Deprecated Amid React 19 Compatibility Issues](https://cdn.sanity.io/images/cgdhsj6q/production/04fa08cf844d798abc0e1a6391c129363cc7e2ab-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Create React App Officially Deprecated Amid React 19 Compatibility Issues
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.
i18n-file-tooling
Advanced tools
For small projects where Weblate or Crowdin are overkill.
A command-line tool for updating and merging internationalization (i18n) JSON translation files. Take a base language file that you work on (e.g. en.json
) and synchronize its keys with other language files (e.g. de.json
, fr.json
). This tool will add missing keys, remove unused keys, and preserve existing translations.
Install the package globally using npm:
npm install -g i18n-file-tooling
i18n-update --path <translations_folder> --from <base_language> --to <target_languages> [--watch]
--path
: Path to the folder containing translation files. Defaults to the current directory (.
).--from
: Base language code (e.g., en
). Defaults to en
.--to
: Comma-separated list of target language codes (e.g., "de,fr,es"
).--watch
: (Optional) Watch for changes in the base file and update translations automatically.You have a project with translation files in JSON format. Your base language is English (en.json
), and you have translations for German (de.json
) and French (fr.json
). You want to ensure all translation files are up-to-date with the base file.
en.json
){
"greeting": "Hello, world!",
"farewell": "Goodbye!",
"menu": {
"home": "Home",
"profile": "Profile",
"settings": "Settings"
}
}
de.json
){
// Hello, world!
greeting: "Hallo, Welt!",
// The key "farewell" is missing
menu: {
// Home
home: "Startseite",
// Profile
profile: "Profil",
// The key "settings" is missing
},
}
To update the German translation file based on the English base file, run:
i18n-update --path ./translations --from en --to de
de.json
){
// Hello, world!
greeting: "Hallo, Welt!",
// Goodbye!
farewell: "",
menu: {
// Home
home: "Startseite",
// Profile
profile: "Profil",
// Settings
settings: "",
},
}
"farewell"
and "menu.settings"
were added with empty string values."greeting"
, "menu.home"
, and "menu.profile"
were kept intact.To automatically update translations whenever the base file changes, use the --watch
option:
i18n-update --path ./translations --from en --to "de,fr" --watch
FAQs
For small projects where Weblate or Crowdin are overkill.
We found that i18n-file-tooling demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.