$npx -y skills add Affitor/affiliate-skills --skill landing-page-creatorBuild high-converting affiliate landing pages as single self-contained HTML files. Triggers on: "create a landing page for", "build a landing page", "product landing page", "affiliate landing page", "comparison page for", "vs page", "single product page", "conversion page", "sale
| 1 | # Landing Page Creator |
| 2 | |
| 3 | Build dedicated affiliate landing pages that convert. Output is a single self-contained HTML file with inline CSS — no build step, no dependencies, mobile-responsive, deployable anywhere. Supports two page types: single product spotlight and multi-product comparison. |
| 4 | |
| 5 | ## Stage |
| 6 | |
| 7 | S4: Landing — Higher conversion than blog links because the entire page is designed around one goal: convert a visitor into a click. Landing pages are the bridge between traffic sources (social, email, ads) and the affiliate product. |
| 8 | |
| 9 | ## When to Use |
| 10 | |
| 11 | - User wants a dedicated page to promote an affiliate product |
| 12 | - User wants a comparison/vs page for 2-3 competing products |
| 13 | - User has a product from S1 (affiliate-program-search) and needs a conversion page |
| 14 | - User says anything like "landing page", "sales page", "product page", "comparison page", "vs page" |
| 15 | - User wants to promote an affiliate product beyond blog content |
| 16 | - User needs a deployable HTML page for an affiliate campaign |
| 17 | |
| 18 | ## Input Schema |
| 19 | |
| 20 | ```yaml |
| 21 | product: # REQUIRED — the affiliate product to feature |
| 22 | name: string # Product name (e.g., "HeyGen") |
| 23 | description: string # What it does |
| 24 | reward_value: string # Commission (e.g., "30% recurring") |
| 25 | url: string # Affiliate link URL |
| 26 | reward_type: string # "recurring" | "one-time" | "tiered" |
| 27 | cookie_days: number # Cookie duration |
| 28 | tags: string[] # e.g., ["ai", "video", "saas"] |
| 29 | |
| 30 | page_type: string # OPTIONAL — "single" | "comparison" |
| 31 | # Default: "single" |
| 32 | |
| 33 | compare_with: object[] # OPTIONAL — products for comparison page |
| 34 | - name: string # Competitor name |
| 35 | description: string # Brief description |
| 36 | url: string # URL (non-affiliate OK) |
| 37 | pricing: string # Starting price |
| 38 | |
| 39 | angle: string # OPTIONAL — marketing angle / hook |
| 40 | # e.g., "fastest", "cheapest", "best for beginners" |
| 41 | # Default: auto-generated from product strengths |
| 42 | |
| 43 | color_scheme: string # OPTIONAL — "blue" | "green" | "purple" | "orange" | "dark" | hex code |
| 44 | # Default: "blue" (#2563eb) |
| 45 | ``` |
| 46 | |
| 47 | **Chaining from S1**: If `affiliate-program-search` was run earlier in the conversation, automatically pick up `recommended_program` from its output as the `product` input. The field mapping: |
| 48 | - `recommended_program.name` → `product.name` |
| 49 | - `recommended_program.description` → `product.description` |
| 50 | - `recommended_program.reward_value` → `product.reward_value` |
| 51 | - `recommended_program.url` → `product.url` |
| 52 | - `recommended_program.reward_type` → `product.reward_type` |
| 53 | - `recommended_program.cookie_days` → `product.cookie_days` |
| 54 | - `recommended_program.tags` → `product.tags` |
| 55 | |
| 56 | **Chaining from S3**: If `affiliate-blog-builder` was run, use `products_featured` for the comparison page's `compare_with` list. |
| 57 | |
| 58 | If the user says "now make a landing page for it" after running S1 — use the recommended program. No need to ask again. |
| 59 | |
| 60 | ## Workflow |
| 61 | |
| 62 | ### Step 1: Gather Product Info |
| 63 | |
| 64 | If `product` data is available from S1 chaining or user input, use it directly. Otherwise: |
| 65 | |
| 66 | 1. Use `web_search` to research the product: `"[product name] features pricing review"` |
| 67 | 2. Gather: name, description, key features (3-6), pricing, target audience, top competitors |
| 68 | 3. If `page_type = comparison` and `compare_with` is empty: |
| 69 | - Search: `"best alternatives to [product.name]" OR "[product.name] vs"` |
| 70 | - Find 1-2 competitors with pricing, features, and positioning |
| 71 | |
| 72 | ### Step 2: Plan Page Structure |
| 73 | |
| 74 | Read `references/conversion-principles.md` for AIDA framework, CTA placement, and design rules. |
| 75 | |
| 76 | Choose `page_type` if not specified: |
| 77 | - If user mentions "vs", "compare", "comparison", or provides `compare_with` → `comparison` |
| 78 | - Otherwise → `single` |
| 79 | |
| 80 | Plan the page sections based on type: |
| 81 | |
| 82 | **Single product:** |
| 83 | 1. FTC disclosure (above fold) |
| 84 | 2. Hero: headline + subtitle + primary CTA + trust signal |
| 85 | 3. Trust bar: rating, user count, press mention |
| 86 | 4. Features: 3-column grid (3-6 features as benefits) |
| 87 | 5. Pricing: price + CTA |
| 88 | 6. Testimonial: one strong quote |
| 89 | 7. Who is this for: audience list |
| 90 | 8. FAQ: 4-6 que |