0.1.29 • Published 1 year ago

unused-i18n v0.1.29

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

Unused i18n

Simplifies managing and cleaning up unused translation keys in localization files

Features

  • Analyzes source files to identify used and unused translation keys.
  • Supports multiple scoped translation functions.
  • Can display or remove unused translation keys.
  • Configurable through a JSON, CJS, or JS config file.

Installation

You can install unused-i18n via npm:

npm install -g unused-i18n

or

npm install -D unused-i18n

Configuration

Create a unused-i18n.config.json or unused-i18n.config.js file in the root of your project. Here's an example configuration:

module.exports = {
  paths: [
    {
      srcPath: ['src/pages/products'],
      localPath: 'src/pages/products/locales',
    },
  ],
  localesExtensions: 'ts',
  localesNames: 'en',
  scopedNames: ['scopedT', 'scopedTOne'],
  ignorePaths: ['src/pages/products/ignoreThisFolder'],
  excludeKey: ['someKey'],
}
OptionTypeDefaultRequiredDescription
pathsArray of Objects[]YesAn array of objects defining the source paths and local paths to be checked.
paths.srcPathArray of Strings[]YesSource paths to search for translations.
paths.localPathStrings""YesPath to the translation files.
localesExtensionsStringjsNoExtension of the locale files.
localesNamesStringenNoName of the locale files without the extension.
scopedNamesArray of Strings[]NoNames of the scoped translation functions used in your project.
ignorePathsArray of Strings[]NoPaths to be ignored during the search.
excludeKeyArray of Strings[]NoSpecific translation keys to be excluded from the removal process.

Usage

Using with Config File

To use unused-i18n with your config file, simply run:

npx unused-i18n display

Using with Command Line Options

You can also specify the source and local paths directly in the command line:

Display Unused Translations
npx unused-i18n display --srcPath="src/folders/bla" --localPath="src/folders/bla/locales"
Remove Unused Translations
npx unused-i18n remove --srcPath="src/folders/bla" --localPath="src/folders/bla/locales"

API

processTranslations(paths, action) Processes translations based on the specified paths and action.

  • paths: Array of objects containing srcPath and localPath.
  • action: Action to perform, either 'display' or 'remove'.

Development

Building the Project

To build the project, run:

npm run build

Running Tests

To run the tests, use:

npm run test

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please open an issue or submit a pull request if you have any improvements or suggestions.

Acknowledgements

  • Vite - Next Generation Frontend Tooling.
  • TypeScript - Typed JavaScript used in this project.
  • Vitest - Testing framework used in this project.
  • Commander - Node.js command-line interfaces.
0.1.29

1 year ago

0.1.28

1 year ago

0.1.27

1 year ago

0.1.26

1 year ago

0.1.25

1 year ago

0.1.24

1 year ago

0.1.23

1 year ago

0.1.22

1 year ago

0.1.21

1 year ago

0.1.20

1 year ago

0.1.19

1 year ago

0.1.16

1 year ago

0.1.14

1 year ago

0.1.7

1 year ago

0.1.6

1 year ago

0.1.5

1 year ago