Settings

Theme

Show HN: An Internationalization GitHub Action to Replace Crowdin with LLMs

github.com

1 points by cport1 25 days ago · 1 comment · 1 min read

Reader

I built an open-source GitHub Action that translates i18n files using LLMs, designed as a drop-in replacement for Lokalise, Phrase, and Crowdin.

The problem: TMS platforms charge per-word and per-seat, and their machine translation lacks product context. A typical SaaS with 500 strings across 9 languages costs $200-500/month.

How it works: - Extracts strings from your codebase (XLIFF, JSON, PO, YAML) - Diffs against previous translations (only translates what changed) - Sends to any LLM (Claude, GPT-4, Gemini, Ollama) with your product context, glossary, and style guide - Commits translations back to your branch

Key technical bits: - Structured generation for ICU message format (CLDR plural rules handled correctly - Russian 4-form, Arabic 6-form, etc.) - Hash-based caching to avoid re-translating unchanged strings - Provider-agnostic interface - swap LLMs without config changes

GitHub: https://github.com/webdecoy/ai-i18n

Happy to answer questions about the ICU handling, prompt design, or anything else.

cranberryturkey 25 days ago

Crazy when I worked at PayPal back in 2004 it was a very manual process and they had a team dedicated to translation how times have changed

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection