feat(ui): player language setting and translated player screens

オープン
#959 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@Dzeezbtc がすでに取り組んでいます。

2026年11月4日 から。

  • #960 @Dzeezbtc による — オープン

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
25/100
issue の種類
機能追加
明瞭さ
明確に書かれている
活発さ
停滞
技術スタック
typescript

調査の方向性

Start by reading the UI entry points for the header, table settings, action panel, connection and winner banners, and seat prompts, then inspect the club setting catalog at src/club/settings/catalog.ts for the existing language setting. Check the repository's test setup before choosing where to cover the typed translation helper, local storage, and browser-language matching. Done means all 16 languages can be selected in the lobby and table, the choice survives reloads, and the specified screens switch languages; an open linked pull request already indicates work is underway.

索引モデルが issue の本文から書いたものです。

説明

What

A player chooses the language they want Block52 in. The choice sticks, and the player-facing screens switch to it straight away.

What exists today

Nothing. Searched ui, poker-vm, pokerchain, block52-club and block52-chat: no i18n library, no language setting. All UI text is hard-coded English. The only related item is the club setting profile.language ("Default language — players can still change their own") in block52-club src/club/settings/catalog.ts, marked "to build".

Languages (16)

English, Spanish, Portuguese, German, French, Italian, Russian, Turkish, Arabic, Hindi, Chinese (Simplified), Japanese, Korean, Vietnamese, Thai, Indonesian.

Scope

  • Language picker: a globe button in the header and a row in the table's settings panel, opening a list with a tick beside the current language. Each language is shown in its own script.
  • First visit: use the browser's language when we support it, otherwise English. After that, the player's choice wins (stored in localStorage).
  • Small typed t() helper in src/i18n/. A language missing a string fails the type check. No new dependency.
  • First pass of translated text: header/navigation, action panel, table settings, connection banner, winner banner, and the seat/sit-out prompts.
  • Arabic is right-to-left: text flows correctly, but the table layout stays as is so seats don't mirror.

Not in this ticket

  • Admin, explorer and bridge pages stay English for now.
  • Auto-translating messages sent by clubs: Dzeezbtc/block52-club (separate ticket).
  • Player chat translation.

Acceptance

  • A player can pick any of the 16 languages from the lobby and from the table.
  • The choice survives a reload.
  • Unit tests cover the helper, the storage and the browser-language match.
  • Translations get a native-speaker check before being advertised (first pass is machine-written).

Labels wanted: feature, UI, ux (our account can't label on block52/ui).

主要言語
TypeScript
スター
2
フォーク
5
平均マージ
23時間 56分
マージ済み PR(30日)
91

環境構築

このプロジェクトの環境構築ファイルはまだ確認していません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

block52/ui のほかの issue

block52/ui の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。