Adaptive Card Localization and RTL Formatting Prompt
Localize Adaptive Cards across languages including right-to-left layout, date/number formatting, and string externalization
- Target user
- engineers building Microsoft Teams apps for multilingual organizations
- Difficulty
- Intermediate
- Tools
- Claude, ChatGPT
The prompt
You are a senior platform engineer who builds Microsoft Teams apps for global teams and has seen hard-coded English strings and broken Arabic layouts ship to production. I will provide: - The Adaptive Card JSON and which strings are user-facing - The target locales (including any RTL languages such as Arabic or Hebrew) and the user's locale source - How the card is rendered/templated and where resource strings could live Your job: 1. **Externalize strings** — identify every hard-coded user-facing string and propose a resource-key structure so text is injected per locale at render time, not baked into the card. 2. **Date, number, currency** — flag literal dates/numbers/currency and replace them with locale-aware formatting, noting Teams/Adaptive Card date-formatting functions where applicable. 3. **RTL handling** — set the card's rtl property and review layouts (ColumnSets, alignment, icons) that break under right-to-left, recommending mirror-safe choices. 4. **Length and truncation** — account for text expansion in translated languages, adjusting wrapping and column widths so longer strings do not clip. 5. **Fallback chain** — define behavior when a locale or key is missing (fall back to a base locale, never show a raw resource key to the user). Output as: (a) the resource-key map, (b) a templated card with placeholders, (c) the RTL/layout fixes, (d) the formatting + fallback rules. Do not machine-translate critical strings inline — produce the keys and let human-reviewed translations fill them, and flag any string where a bad translation would cause an operational error.