Skip to content

feat: Add Hindi (hi) localization to status page#2193

Merged
mxkaske merged 2 commits into
openstatusHQ:mainfrom
ecogetaway:feat/add-hindi-localization
May 24, 2026
Merged

feat: Add Hindi (hi) localization to status page#2193
mxkaske merged 2 commits into
openstatusHQ:mainfrom
ecogetaway:feat/add-hindi-localization

Conversation

@ecogetaway

Copy link
Copy Markdown
Contributor

Summary

Add complete Hindi localization to OpenStatus status page.

Changes

  • Add hi.json with 135 professionally translated UI strings
  • Update locale registry in packages/locales/index.ts
  • Integrate date-fns Hindi locale for date/time formatting

Details

  • Locale addition follows the same pattern as existing locales (en, fr, de, tr)
  • All string interpolation placeholders preserved for dynamic content
  • Type-safe locale system ensures compile-time validation
  • No breaking changes to existing functionality

Files Changed

  • apps/status-page/messages/hi.json (new) - 135 translated strings
  • packages/locales/index.ts - 3 lines modified

Testing

  • Verify locale selector shows "हिंदी 🇮🇳"
  • Test status page displays correctly with Hindi locale
  • Check date/time formatting works in Hindi
  • Verify all placeholders render correctly

Risk Level

LOW - Additive change, follows existing patterns, no modifications to existing locales

- Add complete Hindi translation (135 strings) for status page UI
- Update locale registry to include Hindi language option
- Integrate date-fns Hindi locale for date/time formatting
- Add Hindi metadata: name='हिंदी', flag='🇮🇳'

Locale addition follows the same pattern as existing locales (en, fr, de, tr).
All string interpolation placeholders preserved for dynamic content.
Type-safe locale system ensures compile-time validation.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@vercel

vercel Bot commented May 24, 2026

Copy link
Copy Markdown

Someone is attempting to deploy a commit to the OpenStatus Team on Vercel.

A member of the Team first needs to authorize it.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

No issues found across 2 files

Re-trigger cubic

@vercel

vercel Bot commented May 24, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
openstatus-dashboard Ready Ready Preview, Comment May 24, 2026 12:13pm
openstatus-status-page Ready Ready Preview, Comment May 24, 2026 12:13pm
openstatus-web Ready Ready Preview, Comment May 24, 2026 12:13pm

Request Review

@mxkaske

mxkaske commented May 24, 2026

Copy link
Copy Markdown
Member

@claude review the translation

@claude

claude Bot commented May 24, 2026

Copy link
Copy Markdown

Claude finished @mxkaske's task in 1m 51s —— View job


Translation Review — Hindi (hi.json)

  • Gather context
  • Read Hindi translation file (hi.json)
  • Compare against English reference locale
  • Review locale registry changes
  • Post review findings

Overall Assessment

The translation is well-structured and complete — all 135 keys are present, all dynamic placeholders are intact, and the file follows the same pattern as existing locales (en, fr, de, tr). The locale registry in packages/locales/index.ts is correctly updated with the date-fns hi locale.

However, there are a few translation quality issues worth addressing before merging.


Issues Found

🔴 Inaccurate translation — "Chart legend" (m5BctM)

EN: "Chart legend"
HI: "चार्ट किंवदंती"   ← incorrect

"किंवदंती" means folklore / tale / legend (as in mythological legend), not a chart key/legend. The correct term for a UI chart legend would be "चार्ट लीजेंड" (loanword) or "चार्ट विवरण" (description).

Fix this →


🟡 Overly verbose status-badge strings

Status badge labels are rendered inline in tight UI spaces. Other locales use concise single words:

Key EN FR HI (current) Suggested
1P6GMj Monitoring Surveillance निगरानी की जा रही है निगरानी
/GKH/w Investigating En cours d'investigation जांच की जा रही है जांच
2wsjxR ongoing en cours चल रहा है जारी

The current translations are grammatically correct sentences but may overflow badge/chip components.


🟡 "Dark" theme label — overly literary (tOdNiY)

EN: "Dark"
HI: "अंधकार"   ← literary (means "absolute darkness / evil darkness")

For a UI theme toggle, "डार्क" (loanword, universally understood) or "श्याम" is more appropriate. "अंधकार" has a strong literary/poetic connotation that feels out of place next to "प्रकाश" (Light).


🟡 Minor inconsistency: subscribe verb

The translation alternates between the Hindi word and a transliteration:

Key Translation Style
IGY48m "सदस्यता की जा रही है..." Hindi
Eq5gCU "सदस्यता अपडेट की गई" Hindi
gczcC5 "सब्सक्राइब करें" Transliteration
Pgb3Xj "सब्सक्राइब किया गया" Transliteration

Picking one style consistently is preferable. Given that "सदस्यता" (membership/subscription) is the proper Hindi noun, using it for the verb forms too ("सदस्यता लें", "सदस्यता ली गई") would be more consistent.


What's Good ✅

  • All 135 keys translated — no missing strings
  • All placeholders preserved: {date}, {pageName}, {email}, {n}, {duration}, {timeFromLast} all intact in correct positions
  • Technical terms correctly kept in English: RSS, SSH, JSON, Atom, Slack, IPv4, "redirectTo"
  • packages/locales/index.ts correctly adds hi to the locale list, localeDetails map, and dateFnsLocales map
  • date-fns Hindi locale (hi) is a valid import from date-fns/locale
  • General vocabulary is natural and professional Hindi

Summary

The critical fix is the "Chart legend" → "चार्ट किंवदंती" mistranslation. The verbose status labels and "Dark" theme label are minor quality issues worth a second pass, but wouldn't block the feature from working correctly.

@mxkaske

mxkaske commented May 24, 2026

Copy link
Copy Markdown
Member

haha thanks @ecogetaway - ignore the claude review, just wanted a quick checkup

@aggmoulik

Copy link
Copy Markdown
Collaborator

@mxkaske for chart legend we should do चार्ट विवरण as it is correct.

Address review feedback with clearer chart legend wording, shorter status
badge labels, and consistent Hindi subscribe terminology.

Co-authored-by: Cursor <cursoragent@cursor.com>
@mxkaske

mxkaske commented May 24, 2026

Copy link
Copy Markdown
Member

Thanks @aggmoulik for the double-check! Thanks @ecogetaway for the update!

@ecogetaway

Copy link
Copy Markdown
Contributor Author

Updated chart legend to चार्ट विवरण and polished a few other strings based on review feedback. Thanks @aggmoulik!

@mxkaske mxkaske merged commit 878e101 into openstatusHQ:main May 24, 2026
4 of 8 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.

3 participants