* All games will be linked
* feat: Add 'Add Game' button to Settings tab
- Added 'Add Game' button to Games to Watch section in Settings
- Implemented logic to add custom games via search input
- Fixed alignment issue with games filter search bar
- Added English translations for new UI elements
* fix PR 33 review issues
---------
Co-authored-by: ethanblazkowicz <wow990922@outlook.com>
Co-authored-by: LeonSparta <46887992+LeonSparta@users.noreply.github.com>
Co-authored-by: Fengqing Liu <fq_aaron@hotmail.com>
This commit documents the current state of the translation system architecture
and consolidates the recent i18n refactoring work.
Documentation updates:
- Add detailed Translation System section describing architecture
- Document all 19 supported languages with native names
- Include TypedDict schema structure and usage examples
- Update project structure to show lang/ directory
- Expand Key Files section with i18n/ package details
- Document language persistence and dynamic switching
Translation system changes:
- Migrate English translations from hardcoded to lang/English.json
- Add English.json as single source of truth for fallback translations
- Update all language files with comprehensive GUI translations
- Refactor translator.py to load English from JSON file
- Add language_name and english_name fields to all translations
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove unused translation keys from all language files:
- Removed chrome login flow keys (no longer used)
- Removed GUI channel headings (table structure changed)
- Removed GUI inventory filter section (filtering not in web GUI)
- Removed GUI settings proxy field (moved to general section)
- Cleaned up other deprecated keys
- Add new translation keys for web GUI:
- OAuth login prompts (oauth_prompt, oauth_activate, oauth_confirm)
- Progress indicators (no_drop, return_to_auto, manual_mode_info)
- Channel empty states (no_channels, no_channels_for_games, channel_count)
- Inventory empty state (no_campaigns, claimed_drops)
- Settings UI (games selector, search, drag-and-drop hints)
- Help section content (about, features, important_notes)
- Header elements (title, language selector, mode indicators)
- Update app.py /api/translations endpoint to use translation keys instead of hardcoded English strings
- Update translator.py TypedDict definitions to match new structure
- Fix i18n __init__.py exports to remove ChromeMessages, GUIChannelHeadings, GUIInvFilter and add GUIHeader
All 19 language files updated consistently. Non-English languages use English text as placeholders for new keys.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>