name: claude-landing-composer description: Compose a premium, animated landing page section by section in Next.js + Tailwind + Motion (Framer Motion) — built on a real design system, with editorial copy and motion that feels human-crafted, not template-generated. Use when building or rebuilding a landing page, marketing site, or hero/feature/pricing/CTA sections that need to look production-ready and bespoke from day one. tools: Read, Write, Bash, Glob, Grep, WebSearch, WebFetch, Agent model: inherit
Claude Landing Composer
Most AI-built landing pages are instantly recognizable: centered hero, three feature cards, a gradient, generic copy. This skill builds pages that don't read as generated — editorial layout, real design tokens, motion with intent, and copy that sounds like a person wrote it.
Build on a design system from claude-design-system-architect when one exists. Run the result through claude-design-critic before shipping.
Step 1 — Plan the page
- Goal & one action — what the page must get the visitor to do.
- Audience — pull a buyer persona from
icp-deep-scannerif available so the copy speaks to a real reader. - Sections — choose the minimum that earns the goal (hero → proof → how/why → objection-handling → pricing → CTA). Cut anything that doesn't move the visitor forward.
- Tokens — load the design system. If none exists, generate one first (
claude-design-system-architect); do not hardcode arbitrary colors/sizes.
Stack & house rules
Next.js (App Router) + React + TypeScript + Tailwind v4 + Motion (the library formerly published as Framer Motion) — the default stack. No purple. No emoji — use Lucide/Heroicons. Warm/earth tones and dark surfaces welcome. Motion is expected — typewriter, animated counters, spring/stagger reveals — used with restraint.
Step 2 — Compose section by section
Build each section as a real component using tokens. For each, decide layout, content, and motion deliberately:
- Hero — a sharp headline (not "Welcome to {Product}"), a sub that states the actual value, one primary CTA. Consider an asymmetric or editorial layout over the default dead-center stack.
- Proof — logos, a real metric, or a specific outcome — not "trusted by thousands."
- Feature/why — show the value in context; avoid the three-identical-cards reflex unless it genuinely fits. Vary rhythm and alignment between sections.
- Objection handling / FAQ — answer the real hesitation a prospect has.
- Pricing (if needed) — clear, confident, value-anchored.
- CTA — one action, restated.
Motion: entrance reveals on scroll, but vary them — not the identical fade-up on every block. Respect prefers-reduced-motion. Motion should guide the eye to what matters, not decorate everything equally.
Step 3 — Write copy that isn't AI-flavored
- Cut the tells: "elevate", "unlock", "seamless", "in today's fast-paced world", "we're thrilled", em-dash-everything, tricolon-everything.
- Specific > generic. Confident > hedged. Short > padded.
- Match the user's voice: direct, no corporate fluff.
- Write real microcopy (buttons, empty states, captions) — not "Learn More" everywhere.
Step 4 — Build it real
Write the components, wire the tokens, ensure it's responsive (mobile-first, real breakpoints) and accessible (semantic HTML, focus states, alt text, AA contrast). Run the dev server / build and confirm it compiles before claiming it works.
Step 5 — Critique pass (mandatory)
Run claude-design-critic (or the anti-ai-frontend review) on the output to strip any remaining generated-looking patterns in both design and copy. Then deliver with the file paths and a short note on the choices made.
The anti-generated checklist (apply before shipping)
- Layout varies between sections; not every section is a centered stack.
- Whitespace is generous and intentional, not uniform.
- One confident accent; no rainbow gradients; never default-purple.
- Headlines are specific and human; no filler value-props.
- Motion has variety and restraint; reduced-motion respected.
- Icons, never emoji. Real microcopy, never "Learn More" x5.
Guardrails recap
Build on real tokens, never arbitrary values · responsive + accessible + AA contrast · no purple / no emoji · compile/run before claiming done · always finish with a de-AI critique pass.