laratoolkit/voyager-translator 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

laratoolkit/voyager-translator

Composer 安装命令:

composer require laratoolkit/voyager-translator

包简介

Auto-translate Laravel lang/ files and Voyager CMS content using Gemini AI or Google Translate. Web UI included. Supports 15 languages.

README 文档

README

Auto-translate your entire Laravel application — lang/ files (PHP + JSON) and Voyager CMS database content — using Gemini AI or Google Translate. Supports 15 languages with a built-in web UI.

Requirements

  • PHP 8.0+
  • Laravel 10, 11, 12 or 13

Installation

composer require laratoolkit/laravel-translator

PHP 8.5+ or dependency conflicts?

composer require laratoolkit/laravel-translator --ignore-platform-reqs

Publish the config (optional):

php artisan vendor:publish --tag=laravel-translator-config

Web UI

Open your browser at:

http://your-app.test/laravel-translator

Lang Files Tab

Translate your lang/ PHP and JSON files:

  1. Scan — detects all locales and key counts in your lang/ directory
  2. Load Strings — loads all translatable strings for the selected source locale
  3. Select targets — choose which languages to translate into
  4. Choose engine — Google Translate (free) or Gemini AI
  5. Translate — real-time per-language progress bar
  6. Write to disk — saves directly to lang/{locale}/  OR  Download ZIP — review before writing

Voyager / DB Tab

Translate Voyager CMS translations table entries (or any model table content via SQL dump):

  1. Load from DB or Upload SQL dump
  2. Source language auto-detected; select target languages
  3. Translate with real-time progress
  4. Save to DB, Download SQL, or Download JSON

Add 'auth' to the middleware config key to protect the UI route.

Artisan Command

# Translate lang/ files
php artisan translate --mode=files --from=en --to=tr,es,ru,ar

# Translate Voyager DB
php artisan translate --mode=voyager --from=tr --to=en,es,ru

# Use Gemini AI
php artisan translate --mode=files --engine=gemini --from=en --to=tr,es

# Only translate missing keys
php artisan translate --only-missing

# Preview without writing
php artisan translate --dry-run

Configuration

# Engine: gemini or gtx (default: gtx)
LARAVEL_TRANSLATOR_ENGINE=gemini

# Required if engine=gemini
GEMINI_API_KEY=your_key_here

# Source locale (auto-detected in web UI)
LARAVEL_TRANSLATOR_SOURCE=en

# Target locales for Artisan command
LARAVEL_TRANSLATOR_TARGETS=tr,es,ru,ar

# Web UI route prefix (default: laravel-translator)
LARAVEL_TRANSLATOR_PREFIX=laravel-translator

Supported Languages

Code Language Code Language
tr Turkish pt Portuguese
en English it Italian
es Spanish ja Japanese
ru Russian ko Korean
de German nl Dutch
fr French pl Polish
ar Arabic uk Ukrainian
zh Chinese

How It Works

Lang Files Mode

  1. Scans lang/{locale}/ directories for PHP files and JSON files
  2. Flattens nested arrays to file.keyvalue pairs
  3. Protects Laravel placeholders (:attribute, :name) and HTML tags during translation
  4. Reconstructs nested structure and writes valid PHP array files or JSON files

Voyager / DB Mode

  1. Reads rows from the translations table (or parses a SQL dump)
  2. Falls back to model table content if translations table is absent
  3. Detects source language automatically from content
  4. HTML-safe translation with token protection
  5. Slug columns auto-transliterated (Turkish, Arabic, Cyrillic → Latin)
  6. Saves via updateOrInsert or exports as SQL / JSON

Engines

Google Translate (GTX) — Free

No API key required. Works out of the box.

Gemini AI — Fast & Accurate

Uses gemini-2.5-flash with bulk requests (up to 60 items/call).
Get a free API key at Google AI Studio.

Standalone Version (React + TypeScript)

Looking for a standalone web app without Laravel? Check out the original version built with React, TypeScript & Vite — no server required, just open in browser:

voyager-translation-tool — Upload a SQL dump, auto-translate Voyager content, export SQL. Runs entirely in the browser.

License

MIT

laratoolkit/voyager-translator 适用场景与选型建议

laratoolkit/voyager-translator 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1 次下载、GitHub Stars 达 3, 最近一次更新时间为 2026 年 03 月 18 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「i18n」 「translation」 「laravel」 「localization」 「google-translate」 「voyager」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 laratoolkit/voyager-translator 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 laratoolkit/voyager-translator 我们能提供哪些服务?
定制开发 / 二次开发

基于 laratoolkit/voyager-translator 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 1
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 3
  • 点击次数: 42
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 3
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-03-18