Commit Graph

9 Commits

Author SHA1 Message Date
GitHub Action
5acb517ca9 [automated] Apply ESLint and Oxfmt fixes 2026-05-04 17:27:54 +00:00
bymyself
7e11c5a059 feat(website): add model thumbnails via hub API; overhaul discovery workflow
generate-models.ts:
- Add thumbnailUrl field to OutputModel
- Fetch representative thumbnail from /api/hub/workflows?tag={slug} at generate time
- Set SKIP_THUMBNAILS=1 to skip network calls for offline/CI use
- Fix error handling: throw on parse failure instead of warn-and-continue
- make run() async; top-level error handler exits with code 1

models.ts:
- Add thumbnailUrl to Model interface
- Remove hardcoded publishedDate/modifiedDate (unreliable for 207 models)

[slug].astro:
- Pass model.thumbnailUrl as ogImage to BaseLayout (falls back to default)
- Remove article:published_time/modified_time meta tags (dates were hardcoded)
- Remove datePublished/dateModified from SoftwareApplication JSON-LD

model-page-discovery.yaml:
- Replace workflow_templates clone + pnpm generator with hub API call
  (curl /api/hub/labels?type=model — no repo clone, no Node setup needed)
- Use sparse-checkout for generated-models.json only (no full clone)
- Add duplicate-issue guard: skip creation if open discovery issue exists
- Fix path inconsistency: single checkout at repo root, no working-directory hops

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-04 17:22:28 +00:00
GitHub Action
32a31611b3 [automated] Apply ESLint and Oxfmt fixes 2026-05-04 08:00:16 +00:00
bymyself
d6704a9233 refactor(website): fix model pages architecture and design token violations
Architecture:
- Replace 1585-line hand-coded models.ts with generated-models.json (207 models,
  auto-generated by running pnpm generate:models) + 40-line model-metadata.ts for
  editorial overrides (docsUrl, blogUrl, featured) + slim 65-line models.ts that
  merges both. No more manually maintained data file.
- Remove 830 per-model translation keys from translations.ts — displayName is now
  a plain string from the generator, not a TranslationKey
- models.ts no longer imports TranslationKey; displayName/description are strings
- Add generate:models script to website package.json

Design token fixes (pattern-compliance violations):
- Replace text-[var(--color-primary-comfy-yellow)] with text-primary-comfy-yellow
- Replace text-white/70 with text-primary-comfy-canvas/70 (matches existing components)
- Replace invented --color-accent/--color-text-secondary with real tokens
- Fix h1 text from text-white to text-primary-comfy-canvas (matches HeroSection pattern)

i18n fixes:
- Add models.hero.tutorialCta, models.hero.blogLink, models.whatIs.heading,
  models.whatIs.tutorialLink keys
- Use t() for all button labels and UI strings in ModelHeroSection.vue
- partner_nodes added to dirLabel in index.astro

Other:
- H1 now reads "{displayName} in ComfyUI" (FE-421 spec)
- Remove description prop from hero (redundant with What-is section)
- Fix GH Actions discovery: m.slug field now matches generator output
- Update add-model-page skill to document new 3-file architecture
2026-05-04 07:53:55 +00:00
GitHub Action
a94c75c4da [automated] Apply ESLint and Oxfmt fixes 2026-05-04 07:38:02 +00:00
bymyself
213870a9df refactor(website): fix model pages architecture and design token violations
Architecture:
- Replace 1585-line hand-coded models.ts with generated-models.json (207 models,
  auto-generated by running pnpm generate:models) + 40-line model-metadata.ts for
  editorial overrides (docsUrl, blogUrl, featured) + slim 65-line models.ts that
  merges both. No more manually maintained data file.
- Remove 830 per-model translation keys from translations.ts — displayName is now
  a plain string from the generator, not a TranslationKey
- models.ts no longer imports TranslationKey; displayName/description are strings
- Add generate:models script to website package.json

Design token fixes (pattern-compliance violations):
- Replace text-[var(--color-primary-comfy-yellow)] with text-primary-comfy-yellow
- Replace text-white/70 with text-primary-comfy-canvas/70 (matches existing components)
- Replace invented --color-accent/--color-text-secondary with real tokens
- Fix h1 text from text-white to text-primary-comfy-canvas (matches HeroSection pattern)

i18n fixes:
- Add models.hero.tutorialCta, models.hero.blogLink, models.whatIs.heading,
  models.whatIs.tutorialLink keys
- Use t() for all button labels and UI strings in ModelHeroSection.vue
- partner_nodes added to dirLabel in index.astro

Other:
- H1 now reads "{displayName} in ComfyUI" (FE-421 spec)
- Remove description prop from hero (redundant with What-is section)
- Fix GH Actions discovery: m.slug field now matches generator output
- Update add-model-page skill to document new 3-file architecture
2026-05-04 07:34:38 +00:00
GitHub Action
8db4e46a51 [automated] Apply ESLint and Oxfmt fixes 2026-05-04 07:20:00 +00:00
bymyself
9bc0d2f3b0 feat(website): add SEO model pages infrastructure
- 103-model registry (100 local + 3 partner nodes) in models.ts with docsUrl/blogUrl fields
- Dynamic [slug].astro route with SoftwareApplication + BreadcrumbList + FAQPage JSON-LD
- ModelHeroSection.vue with partner node support and docs/tutorial CTAs
- "What is X?" section on every model page targeting AI Overviews / PAA
- generate-models.ts parser with API_PROVIDER_MAP for 30+ partner node providers
- Auto-discovery GH Actions workflow (weekly, opens issue on new models)
- add-model-page Glary-Bot skill for non-dev Slack-driven PRs
- Index page listing all 103 models

Closes FE-421
2026-05-04 06:49:37 +00:00
Christian Byrne
5a8ded7959 Website: pull careers page listing from ashby API (#11590)
Careers

---------

Co-authored-by: Glary-Bot <glary-bot@users.noreply.github.com>
Co-authored-by: Alexander Brown <drjkl@comfy.org>
2026-04-24 11:51:43 -07:00