Skip to main content
CSV catalogs exchange messages in rows and columns. Column structure determines which content Hyperlocalise treats as keys and translation values; use the source layout below before translating an existing spreadsheet export. Supported extensions: .csv.

Source file

Save this example as locales/en-US/messages.csv.

Configure your files

Use this i18n.yml for the example, or add its file mapping to your existing bucket. See path templates for other layouts.

Translate

Install the CLI and set OPENAI_API_KEY in your project’s .env.local or shell. You can also configure another AI provider.
The dry run previews the work. The second command writes translations to the configured target path and updates the lockfile.

Behavior and limitations

  • The example uses a header row with key and value. CSV quoting handles commas and multiline values.
  • Locale-column layouts are also supported. Source and target locales select the corresponding columns.
  • Existing rows retain their order; newly appended keys are sorted. CSV quoting and line endings may be normalized.
  • This page covers translation files. For status --output csv, see Command output.

Next steps