Files
wehub-resource-sync 979fb22d7c
CI / test (20, macos-latest) (push) Waiting to run
CI / test (20, ubuntu-latest) (push) Waiting to run
CI / test (22, macos-latest) (push) Waiting to run
CI / test (22, ubuntu-latest) (push) Waiting to run
chore: import upstream snapshot with attribution
2026-07-13 13:01:18 +08:00

45 lines
1.6 KiB
TypeScript

import { MemoryGraph } from "./MemoryGraph";
import { GitHubStarButton } from "./GitHubStarButton";
import { HeroNpxCommand } from "./HeroNpxCommand";
import { FeaturedIn } from "./FeaturedIn";
import { getProjectMeta } from "@/lib/meta";
import { fetchRepoStats } from "@/lib/github";
import styles from "./Hero.module.css";
export async function Hero() {
const meta = getProjectMeta();
const stats = await fetchRepoStats();
return (
<section className={styles.hero} aria-labelledby="hero-title">
<MemoryGraph />
<div className={styles.vignette} aria-hidden />
<div className={styles.content}>
<div className={styles.chip}>
ZERO EXTERNAL DATABASES · v{meta.version}
</div>
<h1 className={styles.title} id="hero-title">
<span className={styles.word}>AGENT</span>
<span className={`${styles.word} ${styles.accent}`}>MEMORY</span>
</h1>
<p className={styles.lede}>
THE MEMORY LAYER YOUR CODING AGENT SHOULD HAVE HAD FROM DAY ONE.
CAPTURE EVERY SESSION. RECALL IN MILLISECONDS. RUN ANYWHERE.
</p>
<div className={styles.cta}>
<HeroNpxCommand />
<div className={styles.ctaSecondary}>
<a href="#live" className="btn btn--ghost">
SEE IT MOVE
</a>
<GitHubStarButton
repo="rohitg00/agentmemory"
initialStars={stats.stars > 0 ? stats.stars : undefined}
/>
</div>
</div>
<FeaturedIn compact />
</div>
</section>
);
}