open-design/apps/landing-page/app/pages
Jane 3e0ff3d0fa
feat(landing-page): point catalog links at /plugins, drop legacy /skills /systems routes (#3386)
The 2026-05 plugins rebuild left three homepage/library surfaces still
pointing at the retired `/skills/`, `/systems/`, and `/craft/` route
trees, so visitors hit a 301 hop (or a stale facet) instead of landing
directly on the new `/plugins/*` pages. Repoint them at the canonical
destinations and align the homepage Labs pills with the real library.

- system-card: link straight to `/plugins/design-system-<slug>/` via a
  new `detailHrefForSystemSlug` resolver instead of hard-coding
  `/systems/<slug>/` and relying on the redirect. The ~8 systems that
  ship no manifest (hence no detail page) degrade to `/plugins/systems/`,
  the same destination the legacy 301 produced, minus the hop and with no
  risk of linking at a page that doesn't exist.
- homepage Labs pills: replace the hard-coded prototype/deck/mobile/office
  facets (mobile/office had drifted to stale or empty counts) with a live
  top-4 of `PLUGIN_CATEGORIES`, counted with the same `categorizePlugin`
  rule `/plugins/templates/` uses and labelled from `pcopy.category`, so
  the homepage stays in lockstep with the library and never shows a dead
  chip. Counts are surfaced through a new `CatalogCounts.templateCategories`.
- remove the Craft entry points from the homepage footer, sub-page footer,
  header Library dropdown, and the plugins hub tile grid. The `/craft/`
  pages stay live; they're just no longer surfaced in site chrome.

The legacy `/skills/`, `/systems/`, `/templates/` 301s added in the prior
PR stay in place for inbound links and search equity.

Co-authored-by: Joey-nexu <joeylee12629@gmail.com>
2026-05-31 11:53:36 +00:00
..
[locale] feat(landing-page): 301 legacy /skills /systems /templates to /plugins (#3352) 2026-05-31 01:04:20 +00:00
agents feat(landing-page): 301 legacy /skills /systems /templates to /plugins (#3352) 2026-05-31 01:04:20 +00:00
alternatives/claude-design feat(landing-page): replicate #2469 SEO content with deploy + regression fixes (#2605) 2026-05-22 00:59:11 +08:00
blog feat(landing-page): 301 legacy /skills /systems /templates to /plugins (#3352) 2026-05-31 01:04:20 +00:00
compare feat(landing-page): replicate #2469 SEO content with deploy + regression fixes (#2605) 2026-05-22 00:59:11 +08:00
craft feat(landing-page): replicate #2469 SEO content with deploy + regression fixes (#2605) 2026-05-22 00:59:11 +08:00
html-anything feat(landing-page): 301 legacy /skills /systems /templates to /plugins (#3352) 2026-05-31 01:04:20 +00:00
official feat(landing-page): 301 legacy /skills /systems /templates to /plugins (#3352) 2026-05-31 01:04:20 +00:00
plugins feat(landing-page): point catalog links at /plugins, drop legacy /skills /systems routes (#3386) 2026-05-31 11:53:36 +00:00
quickstart feat(landing-page): 301 legacy /skills /systems /templates to /plugins (#3352) 2026-05-31 01:04:20 +00:00
tutorials fix(landing): wire GA4 rollout config (#2615) 2026-05-22 14:56:58 +08:00
index.astro fix(landing-page): wire up mobile nav toggle on the homepage (#3295) 2026-05-29 10:19:37 +00:00
og.astro [codex] Add landing page Google Analytics (#2582) 2026-05-21 20:38:09 +08:00
rss.xml.ts fix(landing): expose blog RSS feed alias (#1859) 2026-05-16 21:52:11 +08:00