Skip to content

Conversation

@lokanandaprabhu
Copy link
Contributor

Translation support to Extensions

Fixes

https://issues.redhat.com/browse/RHIDP-8742

Added internationalization (i18n) support to Extensions. The plugin now supports multiple languages with proper fallbacks and maintains all existing functionality.

  • Multi-language support: English (default), German, French, and Spanish

Languages added:

  1. 🇫🇷 French (fr)
  2. 🇩🇪 German (de)
  3. 🇪🇸 Spanish (es)
  4. 🇺🇸 English (en) - default

Screenshots

Screenshot 2025-09-10 at 10 19 14 AM
image
Screenshot 2025-09-10 at 10 36 06 AM
image

✔️ Checklist

  • A changeset describing the change and affected packages. (more info)
  • Added or Updated documentation
  • Tests for new functionality and regression tests for bug fixes
  • Screenshots attached (for UI changes)

@rhdh-gh-app
Copy link

rhdh-gh-app bot commented Sep 10, 2025

Important

This PR includes changes that affect public-facing API. Please ensure you are adding/updating documentation for new features or behavior.

Unexpected Changesets

The following changeset(s) reference packages that have not been changed in this PR:

  • /home/runner/work/rhdh-plugins/rhdh-plugins/workspaces/marketplace/.changeset/add-marketplace-i18n-support.md: @red-hat-developer-hub/backstage-plugin-marketplace-backend, @red-hat-developer-hub/backstage-plugin-marketplace-common, @red-hat-developer-hub/backstage-plugin-catalog-backend-module-marketplace

Note that only changes that affect the published package require changesets, for example changes to tests and storybook stories do not require changesets.

Changed Packages

Package Name Package Path Changeset Bump Current Version
app workspaces/marketplace/packages/app none v0.0.0
@red-hat-developer-hub/backstage-plugin-marketplace workspaces/marketplace/plugins/marketplace minor v0.9.3

@HusneShabbir
Copy link
Contributor

Tested Locally,
/lgtm

Copy link
Member

@christoph-jerolimov christoph-jerolimov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey, really nice work, I have just two suggestions:

  • You translated a lot of Skeletons usages which is imo not needed. Wdyt?

  • I added an idea about removing the Trans component and using MarkdownContent instead.

  • And finally, you also translate the Catalog entites. It's nice, but I don't know if we really want that for now.... Really unsure... 🤔

    Can you maybe test if you can alternatively, add a 2nd property to examples/collections/featured.yaml and if we can use that as translation? Maybe its worth to put this into a 2nd PR.

    # yaml-language-server: $schema=../../json-schema/collections.json
    apiVersion: extensions.backstage.io/v1alpha1
    kind: PluginCollection
    metadata:
     namespace: marketplace-plugin-demo
     name: featured
     title: Featured Plugins
     titleKey: collection.featured.title
     description: A set of great plugins! :)
     descriptionKey: collection.featured.description
    spec:
     type: curated
     plugins:
       - quay
       - 3scale
       - tekton
       - topology

    fyi: These collections aren't used yet in our product.

@openshift-ci openshift-ci bot removed the lgtm label Sep 12, 2025
@openshift-ci
Copy link

openshift-ci bot commented Sep 12, 2025

New changes are detected. LGTM label has been removed.

@lokanandaprabhu lokanandaprabhu force-pushed the feature/RHIDP-8742 branch 3 times, most recently from 5cf48c2 to 530022d Compare September 12, 2025 15:15
Copy link
Member

@christoph-jerolimov christoph-jerolimov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @lokanandaprabhu, this got conflicts after we (I) merged

Another bigger PR from @ciiay is WIP that changes again a lot of strings

Maybe its best to wait until this is also merged and rebase your changes after that.

Sorry that we worked on 3 important changes at the same time on the same code base... 🤷‍♂️

Copy link
Member

@christoph-jerolimov christoph-jerolimov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome work @lokanandaprabhu 👍

Thanks for keeping this updated after the other PRs breaks this.

This lgtm, I would just extract the utils function that was there 3 times. Or remove it. (Final decision in slack... ;))

@sonarqubecloud
Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
44.3% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

@ciiay ciiay merged commit fdda9a1 into redhat-developer:main Sep 26, 2025
8 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants