0.4.14 • Published 1 year ago
unplugin-sheet-i18n v0.4.14
unplugin-sheet-i18n 
unplugin-sheet-i18n enables doing your i18n in a spreadsheet for a better collaborative experience with non-coders and maintainability.
Features
- Supports CSV, TSV, DSV, Excel/Spreadsheets (XLSXMB, ODT), powered by SheetJS and papaparse
- File-to-file convert: en.csv -> en.json
- File-to-multiple convert: i18n.csv -> en.json, vi.json, fr.json,...
- Output merging: i18n_a.csv + i18n_b.csv -> en.json
- Preserve structure: a/i18n.csv -> a/en.json | a/i18n/en.json | a/i18n_en.json
- File generation: i18n_files.csv -> cloud_en.json, cloud_fr.json, template_en.html, template_fr.html
- And more!
Usage
>See a few examples usage here<
Install package:
# npm
npm install unplugin-sheet-i18n
# yarn
yarn add unplugin-sheet-i18n
# pnpm (recommended)
pnpm install unplugin-sheet-i18nSetup:
// vite.config.ts
import SheetI18n from 'unplugin-sheet-i18n/vite'
export default defineConfig({
  plugins: [
    SheetI18n({ /* options */ }),
  ],
})// rollup.config.js
import SheetI18n from 'unplugin-sheet-i18n/rollup'
export default {
  plugins: [
    SheetI18n({ /* options */ }),
  ],
}// webpack.config.js
module.exports = {
  /* ... */
  plugins: [
    require('unplugin-sheet-i18n/webpack')({ /* options */ })
  ]
}// nuxt.config.js
export default defineNuxtConfig({
  modules: [
    ['unplugin-sheet-i18n/nuxt', { /* options */ }],
  ],
})This module works for both Nuxt 2 and Nuxt Vite
// vue.config.js
module.exports = {
  configureWebpack: {
    plugins: [
      require('unplugin-sheet-i18n/webpack')({ /* options */ }),
    ],
  },
}// esbuild.config.js
import { build } from 'esbuild'
import SheetI18n from 'unplugin-sheet-i18n/esbuild'
build({
  plugins: [SheetI18n()],
})// build.config.ts
import { defineBuildConfig } from 'unbuild'
import SheetI18n from 'unplugin-sheet-i18n/rollup'
export default defineBuildConfig({
  hooks: {
    'rollup:options': function (ctx, options) {
      options.plugins = [options.plugins, SheetI18n({
      })]
    },
  },
})See it in action at starter-fullstack
// index.ts
import { createContext } from 'unplugin-sheet-i18n'
createContext({
  outDir: 'dist',
}).scanConvert()Options:
Roadmap
- Add example repos
- Add tests
License
0.4.13
1 year ago
0.4.14
1 year ago
0.4.12
1 year ago
0.4.9
1 year ago
0.4.8
1 year ago
0.4.10
1 year ago
0.4.11
1 year ago
0.4.5
1 year ago
0.4.4
1 year ago
0.4.7
1 year ago
0.4.6
1 year ago
0.4.3
2 years ago
0.4.1
2 years ago
0.4.2
2 years ago
0.4.0
2 years ago
0.3.6
2 years ago
0.3.5
2 years ago
0.3.4
2 years ago
0.3.3
2 years ago
0.3.2
2 years ago
0.3.1
2 years ago
0.3.0
2 years ago
0.2.2
2 years ago
0.2.1
2 years ago
0.2.0
2 years ago
0.1.3
2 years ago
0.1.2
2 years ago
0.1.1
2 years ago
0.1.0
2 years ago
0.0.1
2 years ago