Multi-language support (i18n)

GanttForce currently supports English only. All labels, buttons, error messages, and date formats are hardcoded. Multi-language support would allow teams to use the platform in their preferred language, making the product accessible to non-English-speaking markets.

How it works

Users can select their preferred language from account settings or a language picker in the header. The entire interface — navigation, forms, tooltips, error messages, and date formats — updates immediately without a page reload. The selected language is stored in the user's profile so it persists across sessions and devices.

Administrators managing a workspace see the same interface in their language. Viewer-only users also benefit from localized content. The Gantt timeline, including month abbreviations and half-month labels, adapts to the selected locale.

Scope

  • Language picker in the user account settings (and optionally in the header)
  • Full translation of the Gantt view, Control Panel, Dashboard, and all modals
  • Localized date and time formatting (month names, relative time labels like "2 hours ago")
  • Localized form validation and error messages
  • Localized toast notifications (success, error, warning)
  • Persistent language preference per user

Out of scope (first version)

  • Right-to-left (RTL) layout for Arabic or Hebrew
  • Workspace-level language override (each user picks individually)
  • Automatic language detection based on browser locale (manual selection only)

Notes

The codebase contains approximately 800–1,200 translatable strings across 92 files. An internal analysis (April 2026) identified the Control Panel sections and modals as the highest-priority areas. Month names are already centralized in a single utility file, making them an easy first step.

Two Serbian error messages exist in the current codebase — a decision is needed on whether Serbian becomes the first supported language or those strings are normalized to English.