-
grav2
20 MayBack in late 2015, we announced that Grav's translation workflow was moving to Crowdin. At the time it was a huge step forward. Instead of forking a plugin repo, hand-editing YAML in your editor, and submitting a pull request for every typo, contributors could log into a polished web UI, translate strings in context, and let Crowdin manage the round-trip back to GitHub. For a community that was just starting to grow internationally, it was the right call.
A decade later, the picture has changed. The Admin plugin became Admin2 with its own SvelteKit5 SPA. The plugin ecosystem expanded well past what a single Crowdin project was comfortable indexing. AI translation went from "interesting demo" to "genuinely usable", and our own ecosystem now ships a first-party API plugin and Admin Next that make it trivial to build the kind of integrated tooling that used to require a whole separate platform.

So we built one. Today I'm thrilled to announce the Grav Translations Portal, live at translations.getgrav.org, and the new home for translating Grav plugins and themes going forward.
-
journal
29 DecEver since we added support for multi-language and translations in the beta releases of Grav, we have been asked about translating Grav into various languages. This has typically been centered around the Admin plugin as that has the most translation strings and subsequently is the most common focus of translation needs.
Up until this point, the process of translation involved Forking the plugin repository on GitHub, making edits or additions in the various languages, then submitting a pull request. This worked OK at first, but as the plugin became more complex, more strings were getting added, it became harder and harder to manage. We needed a better solution. Enter Crowdin to the rescue!
Andy Miller