Localizing Brightspot

You can customize Brightspot’s widgets and content edit forms so that editors see the UI in their preferred language. Localizing Brightspot is similar to that for other Java-based web applications.


  1. Clone or download the Brightspot repository from https://github.com/perfectsense/brightspot-cms.git.

  2. Open your Brightspot project in a file manager.

  3. From the cloned repository, recursively copy all files *Default_xx.properties in the directory db/src/main/resources to your Brightspot project directory src/main/ (so that the directory resources/ appears under main/).

    • Retain the directory structure for the copied files.
    • Example: cp resources/com/psddev/cms/tool/widget/BulkUploadWidgetDefault_en.properties src/main/resources/com/psddev/cms/tool/widget/BulkUploadWidgetDefault_en.properties


    In addition to the English-language property files *Default_en.properties, the cloned repository may also provide property files for other languages such as Spanish (*Default_es.properties). If your target language is included, go to step 6.

  4. If Brightspot does not provide the property files for your target language, rename each *Default_en.properties to *Default_xx.properties.

    • The two letters before .properties must be a language code that Java recognizes. For a list of two-letter language codes, see Codes for the Representation of Names of Languages.
    • Example: mv BulkUploadWidgetDefault_en.properties BulkUploadWidgetDefault_fr.properties
  5. For each of the resource files, provide localized strings.

    # Localization for the Upload widget
    title=Transfert Groupé
    message.noTypes=Il n'y a pas de types de contenu qui peuvent être transfert groupé.
  6. Rebuild your Brightspot project.

Users who change their Locale setting in Admin > Users & Roles see the localized text in the Brightspot GUI.


Content Edit Forms

You can localize the field and tab labels in content edit forms. The following screen shots show the GUI result of localizing an Article model class into Spanish.

English Spanish
../../../_images/localized-content-edit-form-en.png ../../../_images/localized-content-edit-form-es.png

Localization of content edit forms is achieved with properties files, where keys for fields and tabs are set with language-specific strings.

To create a properties file for a model:

  1. Change to or create the resources/ directory for your Brightspot project. This directory is in the standard position for Maven projects, src/main/resources/, although your Brightspot project may have a different resources/ directory if your project includes themes.

  2. Change to or create the subdirectory corresponding to the required model. For example, if you are localizing the content edit form for articles, change to or create the subdirectory article/.

  3. Create the file <ContentType>Default.properties_xx. For example, the file ArticleDefault_es.properties localizes the article model into Spanish.

  4. In the properties file, add lines that specify the localized names of fields and tabs, using the following forms: field.<fieldname>=<localname> and tab.<tabname>=<localname>.

    The following example shows localization of an Article model into Spanish.

    # Localization for Article Content Edit Form
    field.leadImage=Imagen de Plomo
    field.body=Texto del Cuerpo
    tab.Push\ Notification=Notificación

    In the previous snippet—

    • Lines 3–5 localize names of the fields defined in the Article model class.

    • Lines 7–9 localize names of the default tabs that Brightspot provides for content edit forms. If a tab name is more than one word, such as “Push Notification,” the spaces between words need to be escaped.

      If you add custom tabs to a model via @ToolUi.Tab, they, too, can be localized by adding their names to the properties file.

  5. Reload or rebuild your Brightspot project.

Users who change their Locale setting in Admin > Users & Roles see the localized text in the Article content edit form.

See also: