Commitff0ca55unknown_key
feat(landing): replace live-count stats with capability metrics
feat(landing): replace live-count stats with capability metrics The stat band exposed live public-repo and user counts, which read weak at launch scale. Swap to capability metrics (time-to-review, 24/7 merges, gate coverage, self-hosted) that read strong at any size and don't leak low numbers. https://claude.ai/code/session_01QKaJBYpD6DGErWHrRVChkf
1 file changed+7−10ff0ca5595108a73e0e4e1efcf426d78205551d4d
1 changed file+7−10
Modifiedsrc/views/landing-2030.tsx+7−10View fileUnifiedSplit
@@ -11,15 +11,12 @@
1111import type { FC } from "hono/jsx";
1212
1313export interface Landing2030Props {
14 // Reserved for future use. The stat band intentionally shows
15 // capability metrics rather than live counts so the page reads strong
16 // at any scale.
1417 stats?: { publicRepos?: number; users?: number };
1518}
1619
17const fmt = (n?: number) => {
18 if (n == null) return "—";
19 if (n >= 1000) return `${(n / 1000).toFixed(n >= 10000 ? 0 : 1)}k`;
20 return String(n);
21};
22
2320/* ---- small stroke icons (inherit currentColor) ---------------------- */
2421const IconReview: FC = () => (
2522 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.6"
@@ -83,7 +80,7 @@ const STEPS: { n: string; title: string; body: string }[] = [
8380 { n: "04", title: "Merged, autonomously", body: "Green across the board? It merges itself and deploys. You wake up to shipped work." },
8481];
8582
86export const Landing2030Page: FC<Landing2030Props> = ({ stats }) => {
83export const Landing2030Page: FC<Landing2030Props> = () => {
8784 const title = "Gluecron — The git host built for 2030";
8885 const desc =
8986 "Gluecron is the AI-native git host. Claude reviews every pull request, gates run at push time, and clean PRs merge while you sleep. Label an issue, walk away, wake up to a merged PR.";
@@ -187,10 +184,10 @@ export const Landing2030Page: FC<Landing2030Props> = ({ stats }) => {
187184 {/* ---- stat band ---- */}
188185 <section class="stats">
189186 <div class="wrap stats-in">
190 <div class="stat"><div class="stat-n">{fmt(stats?.publicRepos)}</div><div class="stat-l">public repositories</div></div>
191 <div class="stat"><div class="stat-n">{fmt(stats?.users)}</div><div class="stat-l">builders onboard</div></div>
192 <div class="stat"><div class="stat-n">< 30s</div><div class="stat-l">to first review</div></div>
187 <div class="stat"><div class="stat-n">< 30s</div><div class="stat-l">to first AI review</div></div>
193188 <div class="stat"><div class="stat-n">24/7</div><div class="stat-l">autonomous merges</div></div>
189 <div class="stat"><div class="stat-n">100%</div><div class="stat-l">push-time gate coverage</div></div>
190 <div class="stat"><div class="stat-n">Self-owned</div><div class="stat-l">your code, your server</div></div>
194191 </div>
195192 </section>
196193
197194