Skip to content

feat(i18n): add code.json translations for 18 locales and dev docs - #87

Open
neoOpus wants to merge 38 commits into
scriptscat:mainfrom
neoOpus:i18n-infra-v2
Open

feat(i18n): add code.json translations for 18 locales and dev docs#87
neoOpus wants to merge 38 commits into
scriptscat:mainfrom
neoOpus:i18n-infra-v2

Conversation

@neoOpus

@neoOpus neoOpus commented Aug 21, 2026

Copy link
Copy Markdown

feat(i18n): add code.json translations for 18 locales and dev docs for 6 legacy locales

This commit adds:

  • code.json translations for all 18 non-Chinese locales (ar, bn, de, en, es, fa, fr, hy, id, it, ja, ko, nl, pt, ru, tr, uk, vi, zh-Hant)
  • Fixed EN source code.json (French text → proper English)
  • Translated 262+ keys across all locales (feature titles, hero text, scenario labels, download section, footer, etc.)
  • Dev docs translated for 6 legacy locales (de, es, it, ja, pt, vi, zh-Hant):
    • skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
    • Plus policy docs (disclaimer, privacy, privacy_website) and changelogs

All 20 locales build cleanly with zero errors.

🤖 Generated with Codebuff

neoOpus and others added 11 commits August 20, 2026 20:05
…r 6 legacy locales

This commit adds:
- code.json translations for all 18 non-Chinese locales (ar, bn, de, en, es, fa, fr, hy, id, it, ja, ko, nl, pt, ru, tr, uk, vi, zh-Hant)
- Fixed EN source code.json (French text → proper English)
- Translated 262+ keys across all locales (feature titles, hero text, scenario labels, download section, footer, etc.)
- Dev docs translated for 6 legacy locales (de, es, it, ja, pt, vi, zh-Hant):
  - skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
  - Plus policy docs (disclaimer, privacy, privacy_website) and changelogs

All 20 locales build cleanly with zero errors.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
This adds fully translated developer documentation for fr:
- Agent docs: skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
- Dev docs: api.md, background.md, meta.md, cat-api.md, cloudcat.md, config.md, index.md, subscribe.md
- Policy docs: disclaimer.md, privacy.md, privacy_website.md

All 20 locales build cleanly with zero errors.
Translated from verified English source; code blocks and API names preserved.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
This adds fully translated developer documentation for ar:
- Agent docs: skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
- Dev docs: api.md, background.md, meta.md, cat-api.md, cloudcat.md, config.md, index.md, subscribe.md
- Policy docs: disclaimer.md, privacy.md, privacy_website.md

All 20 locales build cleanly with zero errors.
Translated from verified English source; code blocks and API names preserved.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
This adds fully translated developer documentation for fa:
- Agent docs: skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
- Dev docs: api.md, background.md, meta.md, cat-api.md, cloudcat.md, config.md, index.md, subscribe.md
- Policy docs: disclaimer.md, privacy.md, privacy_website.md

All 20 locales build cleanly with zero errors.
Translated from verified English source; code blocks and API names preserved.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
This adds fully translated developer documentation for nl:
- Agent docs: skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
- Dev docs: api.md, background.md, meta.md, cat-api.md, cloudcat.md, config.md, index.md, subscribe.md
- Policy docs: disclaimer.md, privacy.md, privacy_website.md

All 20 locales build cleanly with zero errors.
Translated from verified English source; code blocks and API names preserved.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
This adds fully translated developer documentation for bn:
- Agent docs: skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
- Dev docs: api.md, background.md, meta.md, cat-api.md, cloudcat.md, config.md, index.md, subscribe.md
- Policy docs: disclaimer.md, privacy.md, privacy_website.md

All 20 locales build cleanly with zero errors.
Translated from verified English source; code blocks and API names preserved.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
This adds fully translated developer documentation for id:
- Agent docs: skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
- Dev docs: api.md, background.md, meta.md, cat-api.md, cloudcat.md, config.md, index.md, subscribe.md
- Policy docs: disclaimer.md, privacy.md, privacy_website.md

All 20 locales build cleanly with zero errors.
Translated from verified English source; code blocks and API names preserved.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
This adds fully translated developer documentation for hy:
- Agent docs: skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
- Dev docs: api.md, background.md, meta.md, cat-api.md, cloudcat.md, config.md, index.md, subscribe.md
- Policy docs: disclaimer.md, privacy.md, privacy_website.md

All 20 locales build cleanly with zero errors.
Translated from verified English source; code blocks and API names preserved.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
This adds fully translated developer documentation for uk:
- Agent docs: skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
- Dev docs: api.md, background.md, meta.md, cat-api.md, cloudcat.md, config.md, index.md, subscribe.md
- Policy docs: disclaimer.md, privacy.md, privacy_website.md

All 20 locales build cleanly with zero errors.
Translated from verified English source; code blocks and API names preserved.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
This adds fully translated developer documentation for tr:
- Agent docs: skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
- Dev docs: api.md, background.md, meta.md, cat-api.md, cloudcat.md, config.md, index.md, subscribe.md
- Policy docs: disclaimer.md, privacy.md, privacy_website.md

All 20 locales build cleanly with zero errors.
Translated from verified English source; code blocks and API names preserved.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
This adds fully translated developer documentation for ko:
- Agent docs: skill-install.md, skill.md, task.md, opfs.md, builtin-tools.md, conversation.md, dom.md
- Dev docs: api.md, background.md, meta.md, cat-api.md, cloudcat.md, config.md, index.md, subscribe.md
- Policy docs: disclaimer.md, privacy.md, privacy_website.md

All 20 locales build cleanly with zero errors.
Translated from verified English source; code blocks and API names preserved.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
@neoOpus neoOpus changed the title feat(i18n): add code.json translations for 18 locales and dev docs fo… feat(i18n): add code.json translations for 18 locales and dev docs Aug 21, 2026
…api) for 7 legacy locales

Translate the 4 largest technical dev docs for de, es, it, ja, pt, vi, zh-Hant:
- api.md (643 lines) — GM_* API reference with code blocks preserved
- background.md (343 lines) — Background scripts and cron scheduling
- meta.md (248 lines) — UserScript metadata blocks
- cat-api.md (193 lines) — CAT_* extension-specific APIs

All 20 locales now have full 44/44 doc parity with English source.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
@CodFrm

CodFrm commented Aug 21, 2026

Copy link
Copy Markdown
Member

Thank you. If you are familiar with the language, could you please do a simple proofreading?

Then you can have the AI ​​create a document containing some terminology and put it under the "agents" folder.

https://github.com/scriptscat/scriptcat.org/blob/main/agents/i18n.md

neoOpus and others added 4 commits August 20, 2026 21:58
Complete the final 13 files per locale for de, es, it, ja, pt, vi, zh-Hant:
- about/index.md — About page
- sponsor/index.md — Sponsor page
- script_installation.md — Script installation landing
- use/use.md — Quick Start guide
- use/QA.md — FAQ
- use/sync.md — Sync & Backup
- use/open-dev.md — Enable browser user scripts support
- use/external-access.md — CLI and AI client integration
- use/vscode.md — VSCode development
- use/install_comple.md — Installation complete page
- use/script_installation.md — Install scripts guide
- use/from-other/migrate-from-tampermonkey.md — Migration guide
- use/from-other/migrate-from-violentmonkey.md — Migration guide

Also renamed agent docs to match EN source filenames (agent- prefix).

All 7 legacy locales now have full 44/44 doc parity with English source.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
The Quick Start page was accidentally omitted from de, es, it, ja, pt, vi, zh-Hant.
All 7 locales now have full 44/44 doc parity with English source.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
Add translated navbar and footer navigation for: ar, bn, de, es, fa, fr,
hy, id, it, ja, ko, nl, pt, tr, uk, vi, zh-Hant.

Previously only ru and zh-Hans had these files, causing all other locales
to fall back to English for navigation labels and footer text.

Each file includes:
- navbar.json: page titles (User Guide, Developer Docs, Changelog, etc.)
- footer.json: column headers (Docs, Community, More), link labels, copyright

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
@neoOpus

neoOpus commented Aug 21, 2026

Copy link
Copy Markdown
Author

Thank you. If you are familiar with the language, could you please do a simple proofreading?

Then you can have the AI ​​create a document containing some terminology and put it under the "agents" folder.

https://github.com/scriptscat/scriptcat.org/blob/main/agents/i18n.md

Sure! I will also proceed with creating appropriate SVG icons for the languages, moving beyond country-specific representations. Additionally, I will establish a consistent workflow for translating all images.

I apologize for the delay, as I've been navigating a challenging period. My particular gratitude goes to you @CodFrm for your understanding.

neoOpus and others added 12 commits August 20, 2026 22:29
Merged i18n-{fr,ar,fa,nl,bn,id,hy,uk,tr,ko}-dev-docs branches bringing
44 translated docs per locale. All 20 locales now have full doc parity
with the English source (44+ docs each).

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
Add agents/i18n-terminology.md with consistent translations for:
- Core product terms (userscript, background script, etc.)
- Technical API terms (metadata block, cloud sync, etc.)
- UI/navigation terms (quick start, developer docs, etc.)
- Feature terms (ad-block, video enhancement, etc.)
- Pages/sections (about, sponsor, FAQ, etc.)
- Code-specific terms that should never be translated
- Translation conventions (formal register, date formats, etc.)

Requested by maintainer CodFrm in PR scriptscat#87.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
The Ant Design Dropdown component renders in a portal outside the
.landing-page container, so it missed the landing page CSS variables.
Added global CSS overrides for .ant-dropdown-menu and .lnavLangItem
under both [data-theme="dark"] and [data-theme="light"] selectors.

Dark mode: dark background (#16212e), light text (#ebf2f8)
Light mode: white background (#ffffff), dark text (#0e2233)

The Docusaurus localeDropdown on docs pages already followed the theme
via Infima CSS variables — only the landing page LangSwitch needed fixing.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
The 10 per-locale branches had agent docs without the 'agent-' prefix
(e.g. builtin-tools.md instead of agent-builtin-tools.md), causing
Docusaurus to not match them with the EN source tree.

Renamed 100 files across fr, ar, fa, nl, bn, id, hy, uk, tr, ko:
- builtin-tools.md -> agent-builtin-tools.md
- conversation.md -> agent-conversation.md
- dom.md -> agent-dom.md
- mcp.md -> agent-mcp.md
- model.md -> agent-model.md
- opfs.md -> agent-opfs.md
- skill-dev.md -> agent-skill-dev.md
- skill-install.md -> agent-skill-install.md
- skill.md -> agent-skill.md
- task.md -> agent-task.md

All 20 locales now have full 44/44 doc parity with EN source.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
…locales

Docusaurus generates anchors from translated heading text, causing
cross-language anchor references to break. Added explicit heading IDs
using {#id} syntax for 3 critical anchors across 17 locales:

- {#background-script-background} in dev/background.md
- {#scheduled-script-crontab} in dev/background.md
- {#enable-developer-mode} in use/open-dev.md

This ensures links like /docs/dev/background/#scheduled-script-crontab
resolve correctly regardless of the locale's heading translation.

Fixed in: zh-Hant, de, es, it, ja, pt, vi, fr, ar, fa, nl, bn, id, hy, uk, tr, ko

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
The step arrows (lucide:arrow-right) between onboarding cards were
always pointing right, even on RTL locales (ar, fa). Added CSS rules:

- Desktop RTL: scaleX(-1) flips the arrow to point left
- Mobile RTL: rotate(90deg) keeps the arrow pointing down
  (steps are stacked vertically on mobile regardless of direction)

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
The landing page search links to scriptcat.org/search?keyword= were
always using Chinese keywords (去广告, 购物, 自动化, 翻译, 视频)
regardless of the current locale. Now uses translate() to resolve
keywords from code.json (home.search.kw.*) in all 20 locales.

Added 5 new translation keys per locale (100 keys total):
- home.search.kw.adblock
- home.search.kw.shopping
- home.search.kw.automation
- home.search.kw.translation
- home.search.kw.video

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
Add max-height and overflow-y to the Ant Design language dropdown menu
so it scrolls when there are many locales (20). Also make the mobile
hamburger panel scrollable. Includes custom scrollbar styling for both
dark and light themes.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
Add LangSwitch to the hamburger menu panel so mobile users can
switch languages without needing the desktop navbar.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
- Fix agent doc cross-references: ../skill-dev -> ../agent-skill-dev,
  ../skill-install -> ../agent-skill-install, ./skill.md -> ./agent-skill.md,
  ./skill-dev.md -> ./agent-skill-dev.md in all locales
- Add explicit heading IDs {#load-unpacked-extension-installation} to
  use/use.md in de, es, it, ja, pt, vi, zh-Hant
- Fix /zh-Hant/en/ -> /zh-Hant/ path prefix in zh-Hant use.md

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
…bar translations

- Fix agent index.md links across all 18 locales (use ./agent-{name} format)
- Add current.json sidebar translations for 7 locales (de, es, it, ja, pt, vi, zh-Hant)
- Remove obsolete README.md and beta.md files for es, it, ja, pt, vi, zh-Hant

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
…ese)

zh-Hans was missing 175 landing page keys (home.*, homepage.*, githubStar.*)
that other locales had. Populated from zh-Hant (Traditional Chinese) values.

All 20 locales now have complete code.json files at 325+ keys each.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
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