open-design/apps
koki ee1eab77c6
feat(landing): add Community link + first-party Ambassadors page (#3066)
* feat(landing): add Community link to top nav

Adds a 'Community' entry to the landing-page nav between Blog and the
Star CTA, linking to /community/ which Cloudflare Pages 302-redirects to
the contributors honor-cards page (currently a Vercel deploy).

Translations added for all 18 locales. The nav slot was previously empty
after Blog because Contact had been intentionally pulled from the bar
(left as a footer + #contact anchor).

* fix(landing): use literal /community/ href so non-default locales don't 404

PerishCode review caught that href('/community/') routes through
localizedHref and produces /zh/community/, /ja/community/, etc. The
_redirects rule only matches the literal /community/ and the
[locale]/[...path].astro catch-all does not generate community pages,
so 17 of the 18 translated locales would have hit a Cloudflare 404.

The destination is a single non-locale-aware external page, so skip
the locale prefix entirely — same shape as the GitHub Star and
Download CTAs.

* feat(landing): host community + ambassadors page first-party

Lands the contributors / ambassadors page as a static asset at
apps/landing-page/public/community/index.html, served at /community/
on open-design.ai. Drops the temporary 302 to the Vercel preview URL
(d5458c46-…vercel.app) — that hostname was a deploy-time UUID Vercel
could recycle, which the reviewer correctly flagged as a follow-up.

The page now opens with an Ambassadors section: vocation, patronage,
covenant — three columns of the program in Renaissance-atelier voice,
with a single Apply on Discord CTA pointing at the ambassador channel
(discord.gg/2p7Ajbxw3h). Maintainers / leaderboards / good-first-issues
sit below as before. Header.tsx comment updated to point at the new
source of truth instead of the deleted redirect rule.

* fix(community): drop time-bound claims, tighten bot heuristic, drop dead CORE_TEAM entry

PerishCode review on ff1cd44b flagged three correctness issues with
the static community page. Addressing each:

* The 'This week's signal' / 'This week's leader' / 'Last 7 days' /
  'PRs · 7d' framing made promises a frozen RANKING_SNAPSHOT can't
  keep — three weeks from build, the page would be calling the
  2026-05-26 leaderboard 'this week's leader.' Renamed to time-neutral
  copy ('Recent signal', 'A recent leader', 'Snapshot', 'Recent PRs')
  and dropped the snapshot's 'since' field so we don't pin a window
  we can't honour. Real refresh pipeline is a follow-up.

* 'Showing first N · resets every 30 minutes' didn't describe the code
  (no caching of any kind exists; each page load re-hits /search/issues
  and /users/:login). Replaced with a truthful 'Showing first N open
  good-first-issues.'

* The bot exclusion heuristic used substring match on bot/cursor/agent,
  which would silently drop real logins like 'agentina', 'cursorsmith',
  'robothai'. Tightened to a whole-token regex (/(?:^|[-_])(bot|cursor|
  agent)(?:$|[-_])/) and dropped 'leon wang' from CORE_TEAM — it had
  an embedded space, which GitHub logins never do, so the entry was
  unreachable dead code.

---------

Co-authored-by: koki yanlai xu <koki@kokideMacBook-Air.local>
2026-05-27 11:33:45 +00:00
..
daemon Formalize skill artifacts into plugins (#3085) 2026-05-27 08:26:00 +00:00
desktop fix Windows folder import from project modal (#2863) 2026-05-26 06:52:07 +00:00
landing-page feat(landing): add Community link + first-party Ambassadors page (#3066) 2026-05-27 11:33:45 +00:00
packaged fix(packaged): honor OD_DATA_DIR in desktop runtime (#2162) 2026-05-24 14:21:54 +00:00
telemetry-worker chore: pin dependency versions and harden CI caches (#2189) 2026-05-19 13:58:27 +08:00
web Hide social sharing without explicit preview URL (#3108) 2026-05-27 10:55:31 +00:00
AGENTS.md refactor(daemon): split agent runtime definitions (#1063) 2026-05-11 15:01:55 +08:00