-
Notifications
You must be signed in to change notification settings - Fork 4
Description
Context / Problem
In our wallet implementation, we encountered challenges around multi-language support for render templates. The current spec is not explicit about how to associate a render template with a specific language.
We implemented a design where multiple renderMethod objects are configured (one per language). The wallet then provides a UI for users to switch between languages. While this works, it’s unclear if this approach aligns with the spec.
A key UX challenge is how wallets should determine which template to show first. Ideally, the wallet should display the user’s preferred language (based on device or wallet settings) by default, and then allow switching to alternate languages. The current spec doesn’t define how templates are linked to a language, making this prioritization difficult.
Example
We tested this with a credential (farmer VC) that has three languages. Each language uses a separate SVG render template, and the wallet slides between them.
Questions / Proposal
Should the spec explicitly support a way to indicate the language of each render template?
Would it make sense to add a contentLanguage property (mirroring the Content-Language HTTP header) to the template object, so wallets can:
-
Automatically detect the language of a template
-
Prioritize showing the user’s preferred language first
-
Provide fallbacks when the preferred language is not available
Are there best practices for ordering or fallback behavior in multi-language scenarios?