Skip to content

Conversation

@hellosunghyun
Copy link
Contributor

Summary

This PR adds comprehensive Korean language support to Folo, including complete translations and improved UI layout for Korean users.

Korean Language Support

  • Complete Korean translations for all UI components, settings, shortcuts, and error messages
  • Added Korean language imports to default resource files
  • Improved type safety for Korean language definitions
  • Unified Korean translations for consistency (e.g., standardized "기사" term for articles)

Korean Login UI Layout Improvement

  • Issue: Korean login interface showed unnatural word order and layout
  • Solution: Implemented language-specific conditional rendering with optimized translations
  • Result: Korean users see natural layout: [Folo Logo] + "에 로그인" = "Folo에 로그인"
  • Compatibility: Other languages maintain existing layout unchanged

Changes

Translation Files Added/Updated

  • locales/app/ko.json - Main app translations (including optimized signin translations)
  • locales/common/ko.json - Common UI elements
  • locales/settings/ko.json - Settings page translations
  • locales/shortcuts/ko.json - Keyboard shortcuts
  • locales/errors/ko.json - Error messages
  • locales/lang/ko.json - Language definitions
  • locales/ai/ko.json - AI-related translations

UI Layout Improvements

  • Korean users: Folo logo + "에 로그인" displays as natural "Folo에 로그인"
  • Other languages: Existing layout preserved (Logo above + text with Folo logo)
  • Clean separation: Visual logo component + localized text for optimal UX

Technical Implementation

  • Added Korean language support in default resource files
  • Implemented language-specific conditional rendering in LoginModalContent.tsx
  • Optimized Korean signin translations for cleaner UI composition
  • Updated type definitions for better Korean language support
  • Enhanced formatNumber utility with Korean number formatting support
  • Maintained full backward compatibility

Test Plan

  • Complete Korean translation coverage across all features
  • Natural Korean login UI layout with proper logo positioning
  • Existing layout preservation for all other languages
  • Settings, shortcuts, and error messages in Korean
  • Type safety verification for Korean language definitions
  • Responsive layout compatibility
  • formatNumber utility works correctly with Korean locale

Notes

This comprehensive Korean language support enhances accessibility for Korean users while maintaining full compatibility with existing functionality. The implementation follows i18n best practices and ensures no impact on users of other languages. The optimized signin translations provide a cleaner separation between visual elements and localized text.

This is a fresh PR that replaces #4224 with the same changes.

- Complete Korean translations for all UI components, settings, shortcuts, and error messages
- Improved Korean login UI layout with natural word order
- Added Korean language imports to default resource files
- Enhanced formatNumber utility with Korean number formatting
- Updated type definitions for better Korean language support
- Maintained full backward compatibility with existing languages

Co-authored-by: SungHyun Lee <[email protected]>
Copilot AI review requested due to automatic review settings August 12, 2025 09:19
@follow-reviewer-bot
Copy link

Thank you for your contribution. We will review it promptly.

@vercel
Copy link

vercel bot commented Aug 12, 2025

@hellosunghyun is attempting to deploy a commit to the RSS3 Team on Vercel.

A member of the Team first needs to authorize it.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds comprehensive Korean language support to Folo, including complete translations and improved UI layout optimization for Korean users. The implementation includes full translation coverage across all application components and a specialized login UI layout that provides natural Korean text rendering.

Key Changes:

  • Complete Korean translations for all UI components (app, settings, shortcuts, errors, AI, mobile, native)
  • Korean-specific number formatting using traditional Korean units (만/억/조)
  • Language-specific login UI layout optimization for natural Korean text flow

Reviewed Changes

Copilot reviewed 43 out of 44 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
packages/internal/utils/src/utils.ts Added Korean-specific number formatting with traditional units and language detection caching
packages/internal/utils/src/formatNumber.md Documentation for the new number formatting functionality
packages/internal/utils/src/__tests__/formatNumber.test.ts Comprehensive tests for Korean number formatting
packages/internal/shared/src/language.ts Added Korean language definition to action language mapping
packages/internal/shared/src/hono.ts Updated type definitions to include Korean in schema validation
locales/**/ko.json Complete Korean translations across all locale categories
apps/desktop/layer/renderer/src/modules/auth/LoginModalContent.tsx Korean-specific login UI layout optimization
Various type definition files Updated to include Korean language support in constants and resource imports

- Rename cacheTimestamp to languageCacheTimestamp for clarity
- Increase cache duration from 5s to 5m for better performance
- Extract isKoreanLayout helper function for improved readability
- Remove extra keys from ko.json that don't exist in en.json
- Remove shortcuts.hotkey and shortcuts.hotkey_placeholder from ai/ko.json
- Remove general.data_persist keys from settings/ko.json
@DIYgod
Copy link
Member

DIYgod commented Aug 14, 2025

Thank you for your contribution. However, based on past experience, community-added translations often fall out of sync when we release updates. Since our team has limited capacity to maintain multiple languages, we must be selective about adding new ones. Would you be willing to take ongoing responsibility for keeping the Korean translation up to date?

If the answer above is yes, then

  1. isKoreanLayout will complicate subsequent maintenance and code logic, so I prefer to remove it.
  2. there are many strange extra changes in the PR, could you remove them? for example:

@hellosunghyun
Copy link
Contributor Author

@DIYgod I will check it periodically and contribute to Korean.
I think I've checked everything I requested for modification, so please check it!
I'm sorry if it didn't work out! I'm a beginner!

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