A cross-platform desktop app for AI-powered Minecraft mod and modpack localization. Translate mod language files, FTB Quests, Patchouli guidebooks, and supported JSON/SNBT files into Japanese or another target language. Built with Tauri, Rust, and TypeScript.
- Mod Translation: Translates mod language files and outputs them as resource packs
- Quest Translation: Supports FTB Quests and Better Quests translation
- Supports multiple FTB Quest directory structures:
- Standard:
config/ftbquests/quests/ - FTB Interactions Remastered:
config/ftbquests/normal/ - Nested categories and deeply nested quest structures
- Standard:
- Supports multiple FTB Quest directory structures:
- Patchouli Guidebook Translation: Translates Patchouli guidebooks within mod JAR files
- Multi-Language Support: Built-in targets include Japanese, Simplified Chinese, Korean, German, French, Spanish, Italian, Brazilian Portuguese, and Russian; custom language IDs are supported too
- AI-Powered: Uses advanced language models for high-quality translations
- Provider Choice: Connect your own OpenAI, Anthropic, or Google Gemini API key
- Signed Updates: Tauri's updater verifies signed update artifacts before installation
- Progress Tracking: Real-time progress display with interrupt capability
- Batch Processing: Efficiently processes large mod packs with chunking
The application interface is currently available in English and Japanese. Translation output is not limited to those UI languages; you can select a built-in or custom Minecraft language.
Download the latest release for your platform from the Releases page:
- Windows: Download the
.exeor.msiinstaller - macOS: Download the
.dmgfile (Intel or Apple Silicon) - Linux: Download the
.AppImageor.debpackage
To translate with an AI provider, create your own API key and enter it in Settings → LLM Settings. OpenAI key setup · 日本語ガイド
API usage is billed by the provider and is separate from ChatGPT subscriptions. The key is never embedded in the app. In the current version, a key entered in Settings is saved in the local application config.json without OS-keychain encryption; protect your OS user account and do not share or sync that file. See the API key security guide.
The app checks for published releases and installs updates only after Tauri verifies their signatures. See Updater and release maintenance if you maintain this project.
- Clone the repository:
git clone https://github.com/Y-RyuZU/MinecraftModsLocalizer.git
cd MinecraftModsLocalizer- Install dependencies:
bun install- Run in development mode:
bun run tauri devTo build the application for your current platform:
bun run tauri buildThis project uses GitHub Actions for continuous integration and deployment.
-
Build and Release (
build.yml)- Triggered on pushes to main, tags, and pull requests
- Runs tests, linting, and type checking
- Builds release artifacts for Windows, macOS (Intel & ARM), and Linux (PR validation runs separately)
- Creates draft releases for version tags
-
PR Validation (
pr-validation.yml)- Validates pull requests with linting, formatting, and tests
- Runs security scans with cargo audit
-
The release job includes Tauri-signed updater artifacts and generates the platform
latest.jsonbefore creating a draft release.
- Update version in
src-tauri/tauri.conf.jsonandsrc-tauri/Cargo.toml - Commit and push changes
- Create and push a version tag:
git tag v3.0.1 git push origin v3.0.1
- GitHub Actions builds installers, updater bundles and signatures, then creates a draft release containing
latest.json - Verify the draft assets and manifest, edit release notes, and publish. The in-app updater will only see a published release.
Release signing setup and checks are documented in docs/updater.md.
Run the test suite:
# Run all tests
bun test
# Run with Jest
bun run test:jest
# Run with coverage
bun run test:coverageContributions are welcome! Please feel free to submit a Pull Request.
You can help make the app easier to discover and use worldwide by contributing a README or UI translation. The source of truth for interface strings is public/locales/en/common.json; existing Japanese translations are in public/locales/ja/common.json.
This project is licensed under the MIT License - see the LICENSE file for details.