Skip to content

feat(i18n): improve Spanish dashboard translation and add Spanish locale to desktop app - #54415

Open
Chytzo wants to merge 1 commit into
NousResearch:mainfrom
Chytzo:i18n/es-es-dashboard-fix
Open

Chytzo wants to merge 1 commit into
NousResearch:mainfrom
Chytzo:i18n/es-es-dashboard-fix

Conversation

@Chytzo

@Chytzo Chytzo commented Jun 28, 2026

Copy link
Copy Markdown

Summary

Improves the existing Spanish translation of the Hermes web dashboard and adds full Spanish (es) locale support to the Hermes Desktop app.

Changes

Dashboard (web/src/i18n/es.ts)

  • Corrected awkward, incomplete, or untranslated strings throughout the Spanish locale
  • Improved consistency and natural phrasing across all dashboard sections (sessions, cron, kanban, settings)
  • Preserved the recently added scheduled Kanban keys that were introduced after the original PR

Desktop App (apps/desktop/src/i18n/)

  • New es.ts file: Complete Spanish translation of all 1904 translatable strings in the desktop application
  • Registration: Added es locale to the type system (types.ts), translation catalog (catalog.ts), and locale picker (languages.ts)
  • Locale aliases: Added es, es-es, es-mx, es-ar mappings for automatic browser/language detection

Validation

  • TypeScript compilation: tsc --noEmit passes with zero errors
  • Translation key parity: all keys from the English source are present in the Spanish file
  • The existing scheduled Kanban translations are preserved (addressing feedback from PR Improve Spanish dashboard translation #28070)

Context

This PR supersedes the earlier PR #28070, incorporating the maintainer feedback to rebase against current main.

@alt-glitch alt-glitch added type/feature New feature or request comp/desktop Electron desktop app (apps/desktop/*) comp/dashboard Web dashboard / control panel UI (dashboard/, landing) P3 Low — cosmetic, nice to have labels Jun 28, 2026
@Chytzo
Chytzo force-pushed the i18n/es-es-dashboard-fix branch from e73a336 to 4094997 Compare June 28, 2026 20:21
@Chytzo Chytzo changed the title I18n/es es dashboard fix feat(i18n): improve Spanish dashboard translation and add Spanish locale to desktop app Jun 28, 2026

@teknium1 teknium1 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks for extending Spanish support across the dashboard and Desktop.

Problems

  • apps/desktop/src/i18n/es.ts:5 is a complete Translations object, but current main now requires common.expand, common.formatJson, and common.tryHint (apps/desktop/src/i18n/types.ts:73-88). PR head 4094997 contains none of those keys, so it cannot typecheck against current main.
  • The alias additions in apps/desktop/src/i18n/languages.ts have no corresponding update to apps/desktop/src/i18n/languages.test.ts; the existing suite covers alias normalization, support detection, exact IDs, and persisted values at lines 5-42.

Suggested changes

  • Rebuild the Spanish catalog against the current Translations contract, then run the Desktop typecheck.
  • Add coverage for the new Spanish aliases and persisted locale value.
  • Reconcile the dashboard wording independently during salvage; the branch is 3,522 commits behind current main from merge-base 5f6be7f31bd7.

This is an automated hermes-sweeper review.

Comment thread apps/desktop/src/i18n/es.ts Outdated

import type { Translations } from './types'

export const es: Translations = {

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This strict Translations object is stale against current main: common.expand, common.formatJson, and common.tryHint are now required by apps/desktop/src/i18n/types.ts:73-88, but are absent from this catalog. Please regenerate/reconcile the catalog from current main before typechecking.

@teknium1 teknium1 added sweeper:risk-compatibility Sweeper risk: may break existing users, config, migrations, defaults, or upgrades sweeper:blast-moderate Sweeper blast radius: moderate — a subsystem or single platform labels Jul 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/i18n Localization, locales, translations comp/dashboard Web dashboard / control panel UI (dashboard/, landing) comp/desktop Electron desktop app (apps/desktop/*) P3 Low — cosmetic, nice to have sweeper:blast-moderate Sweeper blast radius: moderate — a subsystem or single platform sweeper:risk-compatibility Sweeper risk: may break existing users, config, migrations, defaults, or upgrades type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants