Date: 2026-08-08 15:52
Summary: Wire new catalog category design with sync categories + ten-locale i18n keys.
[question]
In repo /Users/xuli/vscodeai/onlinefreetools, add a new tool category design for designer tools.
Requirements:
- Update
src/site/tools.tsToolCategory to include'design' - Update
src/site/categories.tsandscripts/site/categories.mjsin sync:- TOOL_CATEGORY_ORDER:
['image', 'design', 'developer', 'calculator'] - CATEGORY_ANCHORS.design = 'cat-design'
- getCategoryRuntimeLabelKey → tool_category_design
- getCategoryHomeLabelKey → home_cat_design
- CATEGORY_HOME_SECTION_KEYS for design with home_cat_design / _desc / _blurb
- TOOL_CATEGORY_ORDER:
- Update
src/pages/site/toolContent.tsbuildToolJsonLd category branching for design:- label: tool_category_design
- anchor: cat-design
- applicationCategory: 'UtilitiesApplication' (or DesignApplication string)
- Add i18n keys to ALL 10 files in
src/site/i18n/core/{en,zh,es,ar,pt,id,fr,ja,ru,de}.ts:- tool_category_design
- And if home_cat_* live in core, add home_cat_design, home_cat_design_desc, home_cat_design_blurb
- Add home_cat_design* to ALL 10 language blocks in
scripts/site/i18n.mjs(near existing home_cat_image keys)
Translations (localize, don't leave English everywhere):
- en: Design tools / color, contrast, brand / Browser-local design utilities — contrast and brand tokens, no upload.
- zh: 设计工具 / 配色、对比度、品牌色 / 浏览器本地设计工具 — 对比度与品牌色 token,文件不上传。
- For other langs: short natural local phrases for Design / color·contrast·brand.
Do NOT create the tools themselves. Only category wiring + i18n keys.
Return list of files changed.
[try to solve]
Wired catalog category design (no concrete tools yet): ToolCategory includes design; TOOL_CATEGORY_ORDER is image → design → developer → calculator; anchor #cat-design; runtime key tool_category_design; home keys home_cat_design / _desc / _blurb; JSON-LD uses tool_category_design, cat-design, DesignApplication. Ten-locale core files gained tool_category_design (home_cat_* live only in build-side scripts/site/i18n.mjs); ran npm run merge:tools to refresh generated src/site/i18n/{lang}.ts.
Files changed:
- src/site/tools.ts
- src/site/categories.ts
- scripts/site/categories.mjs
- src/pages/site/toolContent.ts
- src/site/i18n/core/{en,zh,es,ar,pt,id,fr,ja,ru,de}.ts
- scripts/site/i18n.mjs
- src/site/i18n/{en,zh,es,ar,pt,id,fr,ja,ru,de}.ts (generated via merge:tools)
[actions]
- Updated category wiring in tools.ts / categories.ts / categories.mjs / toolContent.ts
- Added tool_category_design to 10 core locale files; home_cat_design* to 10 blocks in scripts/site/i18n.mjs
- Ran npm run merge:tools