UNPKG

translator-sync

Version:

Automate React/Vue i18n translation workflow with AI. Sync translation files automatically, reduce costs 50,000x vs services. Works with react-i18next, vue-i18n, JSON, Fluent.

64 lines 3.07 kB
{ "name": "translator-sync", "version": "0.3.2", "description": "Automate React/Vue i18n translation workflow with AI. Sync translation files automatically, reduce costs 50,000x vs services. Works with react-i18next, vue-i18n, JSON, Fluent.", "keywords": ["react-i18n", "vue-i18n", "i18next", "translation-automation", "localization-tool", "i18n-workflow", "translation-sync", "react-translation", "vue-translation", "i18n-cli", "translation-cli", "automated-translation", "i18n", "translation", "localization", "react", "vue", "nextjs", "ai", "openai"], "homepage": "https://github.com/erik-balfe/translator-sync", "bugs": "https://github.com/erik-balfe/translator-sync/issues", "license": "MIT", "author": "Erik Balfe", "type": "module", "main": "./dist/index.js", "exports": "./dist/index.js", "bin": { "translator-sync": "./dist/cli/translator-sync.js" }, "files": [ "dist", "README.md", "LICENSE" ], "scripts": { "build": "bun build src/cli/translator-sync.ts --target=node --outdir=dist/cli --format=esm && bun build src/index.ts --target=node --outdir=dist --format=esm", "prepublishOnly": "bun run build", "check": "biome check --write .", "lint": "biome lint --write .", "format": "biome format --write .", "format:check": "biome format .", "lint:check": "biome lint .", "ci": "biome ci .", "test": "bun test", "test:unit": "bun test tests/unit/", "test:integration": "bun test tests/integration/", "test:coverage": "bun test --coverage", "type-check": "tsc --noEmit", "security-check": "grep -r -E '(sk-[a-zA-Z0-9]{32,}|api[_-]?key[[:space:]]*[:=][[:space:]]*[a-zA-Z0-9_-]{20,}|npm_[a-zA-Z0-9]{36})' --exclude-dir=node_modules --exclude-dir=dist --exclude-dir=.git --exclude='*.md' --exclude='.env*' --include='*.ts' --include='*.js' --include='*.json' . 2>/dev/null || echo '✅ No API keys detected in code files'", "jsr-check": "npx jsr publish --dry-run --allow-dirty", "release:prepare": "scripts/release-helper.sh prepare", "release:finalize": "scripts/release-helper.sh finalize", "release:add-change": "scripts/release-helper.sh add-change", "release:preview": "scripts/release-helper.sh preview", "release:github": "echo '🚀 To release via GitHub:\\n1. Go to: https://github.com/erik-balfe/translator-sync/actions/workflows/manual-release.yml\\n2. Click \"Run workflow\"\\n3. Enter version number\\n4. Click green \"Run workflow\" button'" }, "dependencies": { "@fluent/syntax": "^0.19.0", "@opentelemetry/api": "^1.9.0", "@opentelemetry/exporter-otlp-http": "^0.26.0", "@opentelemetry/instrumentation-http": "^0.201.1", "@opentelemetry/resources": "^2.0.1", "@opentelemetry/sdk-node": "^0.201.1", "@opentelemetry/semantic-conventions": "^1.34.0", "openai": "^4.103.0" }, "devDependencies": { "@biomejs/biome": "1.9.4", "@types/bun": "latest", "@types/node": "^20.0.0" }, "engines": { "node": ">=18.0.0" }, "publishConfig": { "access": "public" } }