Skip to content

feat(i18n): add Turkish language support#2785

Open
altinsupernova wants to merge 1 commit into
BloopAI:mainfrom
altinsupernova:feat/turkish-localization
Open

feat(i18n): add Turkish language support#2785
altinsupernova wants to merge 1 commit into
BloopAI:mainfrom
altinsupernova:feat/turkish-localization

Conversation

@altinsupernova

Copy link
Copy Markdown

Summary

  • Add full Turkish (tr) localization to Vibe Kanban
  • Update UiLanguage enum in Rust backend and TypeScript types
  • Register Turkish in frontend i18n config and language mappings
  • Create 5 translation files (1,336 total keys) covering all namespaces

Details

All translation keys match English source files 1:1. {{variable}} placeholders are preserved. Proper Turkish characters (ç, ğ, ı, ö, ş, ü, İ) are used throughout. Technical terms (Git, PR, Kanban, MCP, etc.) are kept in English per convention.

Files changed

File Change
crates/services/src/services/config/versions/v6.rs Add Tr variant to UiLanguage enum
shared/types.ts Add "TR" to UiLanguage type
frontend/src/i18n/languages.ts Add TR mapping, endonym, and supported language entry
frontend/src/i18n/config.ts Add Turkish imports and resource registration
frontend/src/i18n/locales/tr/common.json 395 keys — buttons, states, navigation, kanban, workspace, OAuth, shortcuts
frontend/src/i18n/locales/tr/settings.json 327 keys — appearance, editor, GitHub, Git, notifications, privacy, agents, MCP
frontend/src/i18n/locales/tr/projects.json 18 keys — project list and management
frontend/src/i18n/locales/tr/tasks.json 526 keys — tasks, attempts, Git operations, diff, preview, PR creation, scripts
frontend/src/i18n/locales/tr/organization.json 70 keys — organization CRUD, invitations, members, billing

Test plan

  • Select "Türkçe" from Settings → General → Appearance → Language
  • Verify all UI elements render in Turkish
  • Verify no missing translation keys (no fallback to English)
  • Verify {{variable}} interpolations work correctly

Add full Turkish (tr) localization to Vibe Kanban.

Changes:
- Add Tr variant to Rust backend UiLanguage enum (v6.rs)
- Add "TR" to TypeScript UiLanguage type (shared/types.ts)
- Register Turkish in frontend i18n config and language mappings
- Create 5 Turkish translation files (1,336 total keys):
  common.json, settings.json, projects.json, tasks.json, organization.json

All keys match English source files 1:1, {{variable}} placeholders
are preserved, and proper Turkish characters are used throughout.
@Juanlucasbg

Copy link
Copy Markdown

Rebase verification — PR #2785rebases cleanly

Local verification:

  • git rebase main — clean (no conflicts).
  • Targeted compile checks pass (TS errors that surface are environmental, also reproduce on main).

This is the second Turkish language pack in the queue, alongside PR #2434 (different author, similar scope). Bundle with the other queued language packs (#3096 Portuguese, #3212 Russian, #3288 Hebrew + RTL infra, #2434 Turkish).

Action: maintainer policy decision on language packs in the sunset window. Specifically for Turkish: pick whichever of #2785 / #2434 is more complete (key coverage, translation quality) and close the other. Both rebase cleanly.

— Automated rebase-verification: confirmed clean rebase locally; one of two competing Turkish PRs.

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.

2 participants