Skip to content
Back to skills

Landing Page Generator

ASecurity

Use when asked to create a landing page, marketing page, homepage, lead-capture page, campaign page, or conversion-optimised web page. Outputs complete Next.js/React (TSX) + Tailwind CSS components with proven copy frameworks (PAS/AIDA/BAB), SEO meta tags, and Core Web Vitals targets. Triggers on "create a landing page", "marketing page", "homepage", "lead gen page", or "conversion page".

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 5, 2026
ai-agentsgoreactnextjsgitperformance

Works with

  • cli

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 29, 2026

npx -y skills add tmj-90/gaffer --skill landing-page-generator --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Landing Page Generator?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Landing Page Generator
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tmj-90-landing-page-generator/badge)](https://www.skillsdirectory.com/skills/tmj-90-landing-page-generator)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: landing-page-generator
description: Use when asked to create a landing page, marketing page, homepage, lead-capture page, campaign page, or conversion-optimised web page. Outputs complete Next.js/React (TSX) + Tailwind CSS components with proven copy frameworks (PAS/AIDA/BAB), SEO meta tags, and Core Web Vitals targets. Triggers on "create a landing page", "marketing page", "homepage", "lead gen page", or "conversion page".
stack: []
area: marketing
---

# Generate high-converting landing pages

Ship a real page: working TSX components, real copy structure and measured performance.
Match the repo's existing framework, styling and component conventions, using only
dependencies it already has: a delivery never installs one (the safety hook blocks it). A
greenfield bootstrap with no stack chosen may default to Next.js + Tailwind; anywhere else,
if the page truly needs a missing dependency, call `mark_ticket_blocked` naming it.

**Targets** (Core Web Vitals "good", field p75): LCP ≤ 2.5 s, INP ≤ 200 ms, CLS ≤ 0.1.
Also meet WCAG 2.2 AA: text contrast ≥ 4.5:1, a visible focus ring, labelled inputs, and
a keyboard-operable page.

## Copy framework (pick one per page)

| Framework | Structure | Best for |
|---|---|---|
| **PAS** | Problem → Agitate → Solution | problem-aware traffic |
| **AIDA** | Attention → Interest → Desire → Action | cold traffic, new category |
| **BAB** | Before → After → Bridge | outcome/transformation offers |

Templates and the five-objection FAQ are in `references/copy-frameworks.md`. The
`copywriting` skill covers headline and CTA craft.

## Section blueprint

1. **Hero**: an outcome headline (≤ ~10 words), a one-sentence subhead on how, one
   primary CTA, and a proof signal (a count, logos or a rating). No carousel.
2. **Problem**: the cost of the status quo, in the customer's words.
3. **Solution / benefits**: 3–6 benefits, each with a one-line explanation and an
   optional visual.
4. **Social proof**: testimonials with name, role, company and result; logos.
5. **Pricing** (if applicable): 2–4 tiers with the recommended one highlighted.
6. **FAQ**: the five objections. Use native `<details>`/`<summary>` or an accessible
   accordion. `FAQPage` markup is optional because Google no longer shows FAQ rich
   results.
7. **Footer CTA**: repeats the primary action with minimal friction (e.g. email only).

## Steps

1. **Collect the inputs.** Product name, audience, key pain, main outcome, primary CTA
   and its destination, the proof available, and the style direction. Read the ticket,
   `BRAND.md`/tokens and the existing pages first. When unattended, do not stop to ask:
   use what exists and mark gaps as `[TODO: …]` in the copy.
   **Never fabricate testimonials, logos, customer counts or ratings.**
2. **Choose the framework** from the traffic source and awareness level. Write the copy
   before the layout. Draft five headlines and keep the clearest.
3. **Build the sections** as separate components in the repo's component directory.
   Put the copy in props or a content object, not scattered through the JSX. Keep the
   page mostly server-rendered, with client components only where interaction needs
   them.
4. **SEO metadata.** Set a unique `<title>`, a meta description, a canonical, Open
   Graph and Twitter tags, and one `<h1>`. In Next.js App Router, use the `metadata`
   export.
5. **Performance.**
   - Load the hero/LCP image eagerly with `fetchpriority="high"`. In Next.js 16+ use
     `<Image preload>` (or `loading="eager"` + `fetchPriority="high"`); `priority` is the
     Next.js ≤ 15 form, deprecated in 16. Never lazy-load it.
   - Lazy-load images below the fold.
   - Every image gets explicit `width`/`height` and AVIF/WebP.
   - Fonts use `font-display: swap` (or `next/font`) with only the needed weights.
   - No third-party scripts above the fold.
6. **Form** (lead capture). Use labelled inputs with the correct `type` and
   `autocomplete`, inline validation, and an error summary that keeps what the user
   typed. Show a success state, disable double-submit, and post to the real endpoint
   named in the ticket.
7. **Verify.** Run and record each check:
   - the type check (`npx --no -- tsc --noEmit`, which fails rather than downloading)
     and the repo's lint;
   - the repo's build script (e.g. `npm run build`);
   - a component test that renders the page and asserts the h1, the primary CTA href
     and the form's success and error states;
   - Lighthouse (mobile) as a lab check, recording LCP, CLS, TBT and the accessibility
     score, only if it is already installed (`npx --no -- lighthouse`);
   - a viewport check at 375 px, 768 px and 1440 px for overflow and for the CTA above
     the fold, through the repo's browser test runner if it has one.

   Never install or fetch a tool to run a check. Name any check you could not run in
   your evidence instead of claiming it.

## Done when

- The page builds, type-checks and passes its component tests.
- The hero states an outcome and the primary CTA is above the fold at 375 px and
  1440 px (checked by a viewport test, or named as unchecked).
- Where Lighthouse or axe is available, the lab run shows LCP ≤ 2.5 s and CLS ≤ 0.1 on
  mobile and no automated accessibility violations; otherwise the evidence says these
  were not measured.
- No invented proof. Every gap is marked `[TODO]` and listed in the report.

## Anti-patterns

- A lazy-loaded hero image, or layout shift from unsized media or late fonts.
- Several equal-weight CTAs, or full site navigation on a paid-campaign page.
- Lorem ipsum or generic filler copy left in the build. The only allowed placeholder is
  an explicit `[TODO: …]` gap that the report lists.
- Carousels and autoplay video in the hero.

Files in this skill

  • SKILL.md3.7 KB
  • references/copy-frameworks.md1.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.