Files
Rohit Ghumare f1e7b2c577 fix(website): move Product Hunt badge into FeaturedIn (correct post_id 1144164)
Earlier PH badge URL pointed at post_id 773058 which returned 404 —
the WebFetch I pulled the ID from grabbed a wrong number. Correct
post_id is 1144164 per the official embed snippet from the PH
"Embed" tab. Badge now resolves with HTTP 200 + Content-Type
image/svg+xml against api.producthunt.com.

Position fix: pulled the badge out of the Testimonials section
(wrong place — buried below the fold) and added Product Hunt as a
fourth entry in the existing FeaturedIn "AS FEATURED IN" bar at the
top of the page where it sits naturally alongside AlphaSignal,
Agentic AI Foundation, and Trendshift.

- FeaturedIn ITEMS: Product Hunt entry added with the canonical
  featured.svg embed URL (theme=neutral to match the existing
  badges, no t= cache-buster since CDN cache is fine for a
  marketing surface)
- FeaturedIn grid: 3-col → 4-col at desktop, 2-col at 980px,
  1-col at 540px so the four cells stay balanced
- next.config: api.producthunt.com added to remotePatterns so the
  Next image loader accepts the SVG badge
- Testimonials: removed the broken badge row + the now-unused CSS
  (.badgeRow / .badgeLink / .badge); section keeps the
  use-cases + endorsements grid as before
2026-05-18 21:42:06 +01:00
..

agentmemory website

Next.js 15 App Router landing page for agentmemory. Lamborghini-inspired black + gold design system. Deploys to Vercel with zero config.

Stack

  • Next.js 15.1 (App Router, React 19, TypeScript 5.7)
  • next/font for Archivo + JetBrains Mono
  • CSS Modules + one globals.css
  • No Tailwind, no bundler config, no client-side routing

Local dev

cd website
npm install
npm run dev
# open http://localhost:3000

Deploy (Vercel)

Two options:

  1. Import the repo on vercel.com and set Root Directory to website/. That's it.
  2. Or npx vercel from the website/ directory.

No env vars required. Node 20 LTS or newer.

Structure

website/
  app/
    layout.tsx      — <html> + fonts + metadata + viewport
    page.tsx        — composes the landing sections in order
    globals.css     — design tokens, buttons, section-head utilities
  components/
    Nav.tsx         — hexagonal bull mark + menu
    Hero.tsx        — title + lede + CTAs
    MemoryGraph.tsx — client canvas animation + hexagonal pause + scroll rail
    Stats.tsx       — counter-up on intersect
    Primitives.tsx  — three cards with 3D mouse tilt
    LiveTerminal.tsx — typewriter replay of memory.recall + consolidate
    Compare.tsx     — agentmemory vs Mem0/Letta/Cognee table
    Agents.tsx      — supported-agents grid
    Install.tsx     — click-to-copy npm + console commands
    Footer.tsx      — source / changelog / license links
    ScrollProgress.tsx — thin gold progress bar at the top of the viewport
  next.config.ts
  tsconfig.json
  package.json

Each interactive component is a "use client" island. Everything else renders on the server.

Design source

/DESIGN.md at the repo root (generated by npx getdesign@latest add lamborghini). Colors, type, spacing rules live there. Every new component should reference it first.