You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 425a046
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: CLAUDE.md
+16-2Lines changed: 16 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -125,10 +125,10 @@ Completed:
125
125
1. Accounts and authentication
126
126
2. User-owned attempts
127
127
3. Per-user analytics and isolation
128
+
4. Bilingual interface
128
129
129
130
Remaining:
130
131
131
-
4. Bilingual interface
132
132
5. Existing-content cleanup
133
133
6. V3 hardening and release
134
134
@@ -371,7 +371,7 @@ Do not change the mathematical definitions of V2 analytics solely because user i
371
371
372
372
---
373
373
374
-
# 11. V3 Milestone 4 — Bilingual Interface
374
+
# 11. V3 Milestone 4 — Bilingual Interface ✅
375
375
376
376
Implement English / Chinese product support.
377
377
@@ -444,6 +444,20 @@ unless there is a deliberate product reason.
444
444
445
445
---
446
446
447
+
## Delivered
448
+
449
+
- language switch in the nav bar; `users.preferred_language` (set through `PATCH /api/auth/me`) for logged-in users, `localStorage` for visitors, and the browser language on a first visit
450
+
- every interface string in `frontend/src/i18n/messages.ts`; the Chinese table must have exactly the same keys as the English one, enforced by the TypeScript type
451
+
- Chinese boss names, locations, phase names, move names, descriptions, telegraphs, counters and common mistakes for the existing bosses
452
+
- the seed rejects an English text field without its Chinese version, and a move without a Chinese name
453
+
-`moves.name_zh_source` is `wiki` (with `name_zh_source_url`, checked by a database constraint) only when the full name appears on a Chinese wiki page; everything else is `translation`
454
+
- Chinese move descriptions are translations of the sourced English text; the Chinese moveset shows one note saying so
455
+
- move descriptions appear as a hover tooltip and under the move select when recording an attempt
456
+
457
+
The user reviewed all Chinese content.
458
+
459
+
---
460
+
447
461
# 12. V3 Milestone 5 — Existing-Content Cleanup
448
462
449
463
This milestone has changed significantly from the old roadmap.
Copy file name to clipboardExpand all lines: README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -195,7 +195,7 @@ V3 turns the single-user local app into a foundation that several players can us
195
195
* ✅ **Accounts and authentication:** registration, login and logout, argon2-hashed passwords, and server-side sessions in an httpOnly cookie. Boss data stays browsable without an account.
196
196
* ✅ **User-owned attempts:** every attempt belongs to the player who recorded it. Attempts recorded before accounts existed are kept and can be claimed with `scripts.claim_attempts`.
197
197
* ✅ **Per-user analytics:** attempt history, boss analytics, progression, and the Sekiro dashboard only cover your own attempts.
198
-
*🚧**English / 中文 interface:** a language switch, with each language showing only its own text.
198
+
*✅**English / 中文 interface:** a language switch, with each language showing only its own text. The choice is saved on the account, or in the browser for visitors. Most Chinese move names and descriptions are translations of the English source material.
199
199
***Existing content cleanup:** correcting the current boss data rather than adding more bosses from wikis.
0 commit comments