Translation workflow for teams

In most Laravel projects a text change is a code change. Someone spots a typo, opens a ticket, a developer edits a lang file, the change waits for review and ships with the next deploy. The cost is small each time and large over a year, and it lands on the people least interested in the wording.

The articles here are about taking copy out of the release cycle: who should be able to edit a string, how a draft becomes published text, how an update reaches a running app, and what to do when the same sentence lives in six projects. They describe how LangSyncer approaches each of these, and the reasoning applies to any setup where translations are edited outside the repository.

Keep going

Frequently asked questions

Can translations change in production without redeploying a Laravel app?

Yes, if the app loads translations from somewhere other than files baked into the release. With over-the-air translations the application fetches published strings from a service or CDN and caches them, so an edit goes live without a commit or a deploy.

Why separate draft and published translations?

A draft state lets translators and clients work on copy without each keystroke reaching users. Publishing becomes a deliberate step that can be reviewed and rolled back, which is what makes it safe to let non-developers edit production text.

Who should own translation changes on a team?

The people who own the words: product, marketing, support or the client. Developers should own the keys and the places strings appear in code, and stay out of the path for wording changes.

We'd like to use analytics and marketing cookies to understand how the site is used. They stay off unless you accept them. Cookie Policy