feat(website): add "comfyui app" SEO keywords to product pages#11834
feat(website): add "comfyui app" SEO keywords to product pages#11834christian-byrne wants to merge 4 commits intomainfrom
Conversation
…ions Improves SEO for queries like 'comfyui app', 'comfyui web app', and 'comfy ui application' that previously drove organic traffic but dropped after docs.comfy.org/interface/app-mode started outranking the product pages. - BaseLayout: default description now references the ComfyUI app and web app to cover pages without an explicit description. - index: title 'ComfyUI App — Professional Control of Visual AI' and product-focused description. - download: title and description target the desktop app download intent. - cloud: title and description position Comfy Cloud as the official ComfyUI web app. - zh-CN mirrors get localised Chinese titles/descriptions instead of inheriting the English BaseLayout default.
Address review feedback: keep keyword-targeted copy on product pages only; non-product pages (about, contact) and zh-CN pages without an explicit description fall back to the original site-wide tagline.
📝 WalkthroughWalkthroughUpdated BaseLayout to accept an optional ChangesPage metadata & layout wiring
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 7✅ Passed checks (7 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Review rate limit: 4/5 reviews remaining, refill in 12 minutes. Comment |
🌐 Website E2ETip All tests passed.
🔗 Website PreviewWebsite Preview: https://comfy-website-preview-pr-11834.vercel.app This commit: https://website-frontend-cbgx4lb9n-comfyui.vercel.app Last updated: 2026-05-02T20:04:25Z for |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@apps/website/src/pages/index.astro`:
- Around line 13-16: The home meta description passed to BaseLayout via the
description prop in index.astro is too long (~194 chars); shorten it to ~155
characters (max ~165) while keeping key terms like "ComfyUI", "web app", and
"desktop application" for SEO relevance; update the description string in the
BaseLayout declaration in apps/website/src/pages/index.astro to a concise
sentence (~140–160 chars) that preserves intent but fits SERP limits.
In `@apps/website/src/pages/zh-CN/index.astro`:
- Around line 13-16: Update the title prop on the BaseLayout in
apps/website/src/pages/zh-CN/index.astro so it contains the "ComfyUI" app
keyword (e.g., include "ComfyUI 应用" or "ComfyUI App"); specifically modify the
title="Comfy — 视觉 AI 的最强可控性" passed to the BaseLayout component so the new title
string includes "ComfyUI 应用" (or both Chinese and English variants if desired)
to ensure title+description covers "comfyui app" queries.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 8a8ed06a-1144-40df-9db8-1c694474a9e7
📒 Files selected for processing (6)
apps/website/src/pages/cloud/index.astroapps/website/src/pages/download.astroapps/website/src/pages/index.astroapps/website/src/pages/zh-CN/cloud/index.astroapps/website/src/pages/zh-CN/download.astroapps/website/src/pages/zh-CN/index.astro
Address CodeRabbit review feedback: - Home description was 193 chars (exceeded SERP truncation ~165); shortened to 152 chars while preserving 'ComfyUI', 'web app', and 'desktop app' keywords. - zh-CN home title now includes 'ComfyUI 应用' so the title contributes to 'comfyui app' query coverage alongside the description.
Rescope per request: keyword targeting must live in meta tags, not in the visible browser-tab/SERP titles which are considered product copy. - Restore original titles on home, download, cloud (and zh-CN mirrors) to their pre-PR strings. - Keep the keyword-rich <meta name=description> on those product pages (hidden SEO copy, drives the SERP snippet). - Add a new <meta name=keywords> tag, opt-in via a 'keywords' prop on BaseLayout, populated only on the three product pages targeting 'comfyui app' / 'comfyui web app' / 'comfy ui application'.
Rescoped per feedbackPushed e2e1079: keyword targeting now lives only in meta tags — visible page titles (browser tab / SERP) are restored to their original pre-PR strings. What's in the PR now
robots.txt / sitemapLeft untouched. Caveat on
|
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@apps/website/src/pages/zh-CN/index.astro`:
- Line 16: The zh‑CN page's metadata uses the keywords prop and currently
includes multiple English phrases; update the keywords array in the zh-CN
index.astro page to remove or translate all English entries into Chinese (keep
existing Chinese items like "ComfyUI 应用", "ComfyUI 网页版", etc.), replacing items
such as "comfyui app", "comfyui web app", "comfyui application", "ComfyUI 下载",
"可视化 AI", "节点式 AI", "生成式 AI 工作流" with appropriate Chinese-only equivalents so
the keywords list aligns with the zh-CN localization strategy.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: ef51a8ce-367a-4e99-b4ec-40a8230d2409
📒 Files selected for processing (7)
apps/website/src/layouts/BaseLayout.astroapps/website/src/pages/cloud/index.astroapps/website/src/pages/download.astroapps/website/src/pages/index.astroapps/website/src/pages/zh-CN/cloud/index.astroapps/website/src/pages/zh-CN/download.astroapps/website/src/pages/zh-CN/index.astro
✅ Files skipped from review due to trivial changes (1)
- apps/website/src/pages/zh-CN/cloud/index.astro
🚧 Files skipped from review as they are similar to previous changes (2)
- apps/website/src/pages/zh-CN/download.astro
- apps/website/src/pages/cloud/index.astro
| <BaseLayout | ||
| title="Comfy — 视觉 AI 的最强可控性" | ||
| description="ComfyUI 是面向视觉创作者的开源生成式 AI 应用。可在本地下载桌面应用,或在云端使用 ComfyUI 网页版,搭建节点式的图像、视频与 3D AI 工作流。" | ||
| keywords={['comfyui app', 'comfyui web app', 'comfyui application', 'ComfyUI 应用', 'ComfyUI 网页版', 'ComfyUI 桌面应用', 'ComfyUI 下载', '可视化 AI', '节点式 AI', '生成式 AI 工作流']} |
There was a problem hiding this comment.
Align zh-CN keywords with the localization intent.
The keywords list still contains multiple English phrases, which conflicts with the stated zh-CN strategy to avoid repeating English keyword terms.
Suggested adjustment
- keywords={['comfyui app', 'comfyui web app', 'comfyui application', 'ComfyUI 应用', 'ComfyUI 网页版', 'ComfyUI 桌面应用', 'ComfyUI 下载', '可视化 AI', '节点式 AI', '生成式 AI 工作流']}
+ keywords={['ComfyUI 应用', 'ComfyUI 网页版', 'ComfyUI 桌面应用', 'ComfyUI 下载', '可视化 AI', '节点式 AI', '生成式 AI 工作流']}📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| keywords={['comfyui app', 'comfyui web app', 'comfyui application', 'ComfyUI 应用', 'ComfyUI 网页版', 'ComfyUI 桌面应用', 'ComfyUI 下载', '可视化 AI', '节点式 AI', '生成式 AI 工作流']} | |
| keywords={['ComfyUI 应用', 'ComfyUI 网页版', 'ComfyUI 桌面应用', 'ComfyUI 下载', '可视化 AI', '节点式 AI', '生成式 AI 工作流']} |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@apps/website/src/pages/zh-CN/index.astro` at line 16, The zh‑CN page's
metadata uses the keywords prop and currently includes multiple English phrases;
update the keywords array in the zh-CN index.astro page to remove or translate
all English entries into Chinese (keep existing Chinese items like "ComfyUI 应用",
"ComfyUI 网页版", etc.), replacing items such as "comfyui app", "comfyui web app",
"comfyui application", "ComfyUI 下载", "可视化 AI", "节点式 AI", "生成式 AI 工作流" with
appropriate Chinese-only equivalents so the keywords list aligns with the zh-CN
localization strategy.
There was a problem hiding this comment.
Pushing back on this one — keeping as-is.
The original rationale ("zh-CN gets Chinese, no English") was specifically about the visible description (which becomes the SERP snippet — mixing English into a Chinese-language snippet hurts CTR for the local audience). That logic doesn't extend to <meta name="keywords">, which is:
- Invisible — it's a relevance hint to the crawler, not a user-facing string. There's no CTR or readability cost to listing both languages.
- The actual recovery target. This whole PR exists because of dropped rankings on the English query "comfyui app". Stripping
comfyui app/comfyui web app/comfyui applicationfrom the zh-CN keyword set would actively work against the PR's stated goal — those English terms are the ones we're trying to recover, including for international/diaspora users who happen to land on the localized URL.
Concretely, the current zh-CN keyword list intentionally pairs:
- English query targets (
comfyui app,comfyui web app,comfyui application) — for the original recovery use case - Chinese equivalents (
ComfyUI 应用,ComfyUI 网页版, etc.) — for native zh-CN search
That's the SEO-correct shape for a localized page that should rank in both language markets. The description is monolingual (per the earlier rationale); the keywords list is intentionally bilingual.
There was a problem hiding this comment.
Skipped: comment is from another GitHub bot.
PR Created by the Glary-Bot Agent
Summary
Adds "comfyui app" / "comfyui web app" / "comfy ui application" keywords to the titles and meta descriptions of the home, download, and Comfy Cloud pages (and zh-CN equivalents) to recover organic traffic for those queries.
Context
Organic traffic for the query "comfyui app" dropped after
https://docs.comfy.org/interface/app-modestarted outranking the product/landing pages. The docs page about app-mode converts worse than the product pages, so we want Google to prefer comfy.org product pages for that query. The cleanest, lowest-risk lever is on-page SEO metadata.Changes
apps/website/src/pages/index.astro→ titleComfyUI App — Professional Control of Visual AI+ product-focused description.apps/website/src/pages/download.astro→ titleDownload the ComfyUI App — Run Visual AI Locally+ desktop-app description.apps/website/src/pages/cloud/index.astro→ titleComfy Cloud — The ComfyUI Web App+ web-app description.apps/website/src/pages/zh-CN/{index,download,cloud/index}.astro→ localised Chinese titles and descriptions so the zh-CN product pages no longer fall back to the EnglishBaseLayoutdefault.apps/website/src/layouts/BaseLayout.astro→ unchanged net-net (touched then reverted to neutral copy after review feedback so non-product / non-localised pages keep their existing, generic fallback).<title>and<meta>tags change.Review Focus
BaseLayoutdefault. Fixing that fallback for the whole zh-CN tree is out of scope for this PR — happy to follow up if desired.Verification
pnpm typecheck— 0 errorspnpm build— 39 pages built cleanpnpm test:unit— 23/23 passpnpm format:check apps/website/src— clean<title>and<meta name="description">via Playwright on/,/download,/cloud, and the zh-CN equivalents.Screenshots
Home page rendered with the new title (visible in browser tab / SERP preview); visual content unchanged.
Screenshots
┆Issue is synchronized with this Notion page by Unito