Skip to content

[ko] Translate shared website navigation and search UI into Korean #880

Open

Description

@owjs3901

Goal

Translate the shared website shell into Korean while keeping all English routes unchanged. Page content is assigned in separate translation issues.

Scope and source

  • apps/landing/src/components/Header/: desktop/mobile navigation, search placeholder, theme/menu button accessible names.
  • apps/landing/src/app/(detail)/docs/LeftMenu.tsx and components/LeftMenu.tsx: shared sidebar labels, groups and overview labels; keep API component names.
  • apps/landing/src/app/(detail)/docs/RightIndex.tsx: Contents and Edit this page.
  • apps/landing/src/components/SearchModal/: loading, empty state and input/button labels.
  • apps/landing/src/components/Footer.tsx: remaining English text and image alt text; retain existing Korean legal details.

Work

Use next-intl useTranslations and add matching keys to apps/landing/src/i18n/messages/en.json and ko.json. Pass the English catalog (English pages) or a merge of English defaults and Korean translations (Korean pages) through NextIntlClientProvider in SiteLayout. The current infrastructure provides locale context but intentionally leaves UI copy English; this issue introduces the catalogs. Add translations for visible labels and attributes as needed. Preserve URLs, filter/state values and component/API identifiers. Do not translate document bodies or home-page marketing content in this issue.
Catalog wiring: load the English catalog and merge Korean overrides per namespace in src/i18n/request.ts, then pass getMessages({locale}) to NextIntlClientProvider in SiteLayout. Client components use useTranslations; server components use getTranslations({locale}) with an explicit locale.

Getting started

This is intended for a first-time contributor. Comment to claim this page before starting, and send one focused PR. Questions are welcome.

Prerequisite: #881. Wait for that infrastructure to merge before submitting the translation. Context: #584.

Read the translation guide and use the Korean overview at apps/landing/src/app/(detail)/docs/overview/page.ko.mdx as an example. English stays at the original URL; untranslated /ko URLs automatically redirect to their English page.

Acceptance checklist

  • Translate the complete assigned scope into natural Korean, including headings, prose, table descriptions and metadata.
  • Keep API/package names, code behavior, numeric data, external links and benchmark caveats unchanged. Explanatory code comments may be translated.
  • Preserve MDX imports and JSX structure. Fix relative imports when moving files; prefer @/ imports.
  • Keep internal links root-relative (for example /docs/installation); locale-aware navigation adds /ko automatically.
  • Verify both English and Korean URLs, mobile and desktop, links, tables and code blocks.
  • From the repository root run bun install and bun run build; from apps/landing run bun dev and bun run build. Run node script.js to refresh search data; translated pages are connected explicitly in src/i18n/pages.ts. Run the type, lint and i18n checks listed in the translation guide.
  • Keep the English copy unchanged. Do not translate other pages in this PR.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationgood first issueGood for newcomershelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions