Skip to content
UA — Перейти на українську Start free

← Back to the developers overview

Language pack

language-pack.json, translation catalogues and archive limits.

A language pack translates the storefront and the admin into a new language. It contains data only: JSON catalogues and a few images.

language-pack.json
catalogs/<namespace>.json   # one file per namespace
assets/                     # optional: json, png, jpg, jpeg, webp, gif

language-pack.json contains exactly these fields:

  • schema_version — 1; package_type — "language-pack".
  • package_code — the package code, e.g. acme.language.pl (same rules as code).
  • version — the package SemVer; catalog_version — X.Y.Z of the catalogues.
  • locale — the language code, e.g. pl or pt-BR; language and native_name — the language name in English and natively (up to 120 characters).
  • direction — ltr or rtl; publisher — up to 180 characters.
  • laracart_compatibility — compatible Tobto.shop versions; must equal the “Compatibility” field of the submission.
  • catalog_namespaces — list of namespaces (up to 200); the files in catalogs/ must match it exactly.
  • ZIP up to 16 MB, 2 to 512 files, each up to 4 MB; language-pack.json up to 256 KB.
  • Each catalogue is a non-empty JSON object of string values; keys look like checkout.total.label.
  • No other files, links, hidden or case-insensitively duplicated paths.

For a language pack the publication JSON is language-pack.json plus package_checksum and signature. Code, version and compatibility in the form must match it.

Developer documentation