{
  "schemaVersion": "1.0",
  "item": {
    "slug": "lead-gen-website",
    "name": "Lead Gen Website Builder (SEO PUR)",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/LucasGulino/lead-gen-website",
    "canonicalUrl": "https://clawhub.ai/LucasGulino/lead-gen-website",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/lead-gen-website",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=lead-gen-website",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "templates/component-Breadcrumbs.tsx",
      "templates/component-ContactForm.tsx",
      "templates/component-CookieBanner.tsx",
      "templates/component-Footer.tsx"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/lead-gen-website"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/lead-gen-website",
    "agentPageUrl": "https://openagent3.xyz/skills/lead-gen-website/agent",
    "manifestUrl": "https://openagent3.xyz/skills/lead-gen-website/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/lead-gen-website/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Lead Generation Website Builder",
        "body": "Build conversion-optimized local service websites with complete SEO, tracking, and RGPD compliance — avec garde-fous anti-spam (Google Spam Policies + March 2024), local SEO (GBP) et micro-budget ads."
      },
      {
        "title": "When to Use This Skill",
        "body": "Use this skill when the user requests a website for:\n\nLocal service businesses (home services, repairs, professional services)\nLead generation focused on specific geographic areas\nSites requiring 10-20+ pages with service pages, blog, and legal pages\nSEO-optimized content targeting local keywords\nConversion tracking (phone, WhatsApp, forms with UTM parameters)\nRGPD/GDPR compliance (cookie banner, privacy policy, legal pages)"
      },
      {
        "title": "Workflow Overview",
        "body": "Follow these phases sequentially. Do NOT skip phases or combine them without clear reason.\n\nPolicy / Risk Check (mandatory)\n\nRead references/google-spam-guardrails-2024.md\nExplicitly verify: no doorway pages, no scaled generic content, no fake address/avis, no misleading claims.\nIf the project is mise en relation (leadgen): require clear disclosure on all key pages.\n\nThen continue with Phases 1→7."
      },
      {
        "title": "Phase 1: Analysis and Planning",
        "body": "Gather project requirements from the user or specifications document.\n\nRequired information:\n\nBusiness niche and services offered\nGeographic target area (city + radius)\nTarget keywords for SEO\nContact information (phone, WhatsApp, email)\nNumber and types of pages needed\nCompetitor websites (for differentiation)\n\nOutput: Clear understanding of project scope, target audience, and conversion goals."
      },
      {
        "title": "Phase 2: Design Brainstorming",
        "body": "Create ideas.md in the project root with THREE distinct design approaches.\n\nUse templates/design-ideas-template.md as structure. Each approach must define:\n\nDesign movement and aesthetic philosophy\nColor palette with hex codes and emotional intent\nTypography system (headings + body fonts)\nLayout paradigm (avoid generic centered layouts)\nSignature visual elements\nAnimation guidelines\nInteraction philosophy\n\nConsult references/design-philosophies.md for inspiration, but create original combinations.\n\nSelection: Choose ONE approach and document the rationale. This design philosophy will guide ALL subsequent design decisions."
      },
      {
        "title": "Phase 3: Visual Assets Generation",
        "body": "Generate 3-5 high-quality images using generate tool. These images MUST:\n\nAlign with the chosen design philosophy (colors, mood, style)\nBe stored in /home/ubuntu/webdev-static-assets/\nCover key visual needs: hero background, service illustrations, local landmarks, team/artisan photos\n\nPlan strategic usage:\n\nHero section: Most impactful image\nService pages: Relevant illustrations\nAbout/Trust sections: Team or local landmark photos\n\nDo NOT generate images on-the-fly during development. Generate all at once for efficiency."
      },
      {
        "title": "Phase 4: Content Structure",
        "body": "Create detailed content structure for all pages.\n\nOption A (Manual): Write content-structure.md directly with sections for each page including title, meta description, H1, and main content outline.\n\nOption B (Script): Create specs.json with page data, then run:\n\npython /home/ubuntu/skills/lead-gen-website/scripts/generate_content_structure.py specs.json content-structure.md\n\nContent requirements:\n\nMinimum 500 words per main page (homepage, main services)\nMinimum 1000 words per blog article\nInclude target keywords naturally (no stuffing)\nAnswer user intent (what, why, how, cost, area)\nLocal focus (mention city/region frequently)"
      },
      {
        "title": "Phase 5: Development",
        "body": "Initialize project and build all pages.\n\n5.1 Initialize Project\n\nwebdev_init_project <project-name>\n\n5.2 Configure Design Tokens\n\nEdit client/src/index.css with chosen design philosophy:\n\nUpdate CSS variables for colors (primary, secondary, accent, background, foreground)\nConfigure typography (font-family for sans, serif)\nAdjust shadows, radius, animations\n\nAdd Google Fonts in client/index.html:\n\n<link rel=\"preconnect\" href=\"https://fonts.googleapis.com\" />\n<link rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin />\n<link href=\"https://fonts.googleapis.com/css2?family=YourFont:wght@400;600;700&display=swap\" rel=\"stylesheet\" />\n\n5.3 Create Reusable Components\n\nUse templates from templates/ directory. Replace placeholders with project-specific values:\n\nHeader (templates/component-Header.tsx):\n\n{{SITE_NAME}}, {{SITE_TAGLINE}}, {{SITE_INITIALS}}\n{{PHONE_NUMBER}}, {{WHATSAPP_NUMBER}}\n{{NAV_ITEMS}} (JSON array of {label, href})\n\nFooter (templates/component-Footer.tsx):\n\n{{SITE_NAME}}, {{SITE_DESCRIPTION}}\n{{SERVICE_LINKS}}, {{UTILITY_LINKS}}\n{{PHONE_NUMBER}}, {{EMAIL}}, {{LOCATION}}\n\nSEOHead (templates/component-SEOHead.tsx):\n\nReplace {{DOMAIN}} with actual domain\n\nOther components: Breadcrumbs, ContactForm, CookieBanner (copy as-is, minimal customization needed)\n\n5.4 Build Pages\n\nFor similar pages (services, blog articles):\n\nCreate template file (e.g., service-template.tsx) using templates/page-service-template.tsx\nCreate data file (e.g., services-data.json) with array of page data\nRun batch generation:\n\npython /home/ubuntu/skills/lead-gen-website/scripts/generate_pages_batch.py service-template.tsx services-data.json client/src/pages/\n\nFor unique pages (homepage, tarifs, FAQ, contact):\nBuild manually with rich, custom content. Use components for consistency.\n\nFor legal pages:\nUse templates/page-legal-template.tsx with standard legal content.\n\n5.5 Update App.tsx\n\nAdd all routes to client/src/App.tsx:\n\n<Route path=\"/service-page\" component={ServicePage} />\n\nIntegrate Header, Footer, and CookieBanner in App layout."
      },
      {
        "title": "Phase 6: SEO, Tracking, GBP, Ads",
        "body": "6.1 Generate SEO Files\n\nCreate pages.json with all URLs and priorities:\n\n[\n  {\"url\": \"/\", \"priority\": \"1.0\"},\n  {\"url\": \"/service\", \"priority\": \"0.9\"},\n  {\"url\": \"/contact\", \"priority\": \"0.9\"},\n  {\"url\": \"/blog\", \"priority\": \"0.6\"},\n  {\"url\": \"/mentions-legales\", \"priority\": \"0.3\"}\n]\n\nRun script:\n\npython /home/ubuntu/skills/lead-gen-website/scripts/create_seo_files.py yourdomain.com pages.json client/public/\n\nThis creates robots.txt and sitemap.xml in client/public/.\n\n6.2 Add Structured Data\n\nAdd JSON-LD structured data to key pages using SEOHead component's jsonLd prop:\n\nHomepage (LocalBusiness):\n\nconst jsonLd = {\n  \"@context\": \"https://schema.org\",\n  \"@type\": \"LocalBusiness\",\n  \"name\": \"Business Name\",\n  \"telephone\": \"+33123456789\",\n  \"email\": \"contact@example.com\",\n  \"address\": {\n    \"@type\": \"PostalAddress\",\n    \"addressLocality\": \"City\",\n    \"addressCountry\": \"FR\"\n  },\n  \"areaServed\": [\"City1\", \"City2\"],\n  \"openingHours\": \"Mo-Fr 08:00-18:00\"\n};\n\nService pages (Service):\n\nconst jsonLd = {\n  \"@context\": \"https://schema.org\",\n  \"@type\": \"Service\",\n  \"name\": \"Service Name\",\n  \"description\": \"Service description\",\n  \"provider\": {\n    \"@type\": \"LocalBusiness\",\n    \"name\": \"Business Name\"\n  },\n  \"areaServed\": \"City\"\n};\n\nConsult references/seo-checklist.md for complete SEO requirements.\n\n6.3 RGPD Compliance\n\nVerify:\n\nCookieBanner component is integrated in App.tsx\nPrivacy policy page exists with complete RGPD information\nCookie policy page exists\nLegal mentions page exists\nContactForm includes link to privacy policy\n\nConsult references/rgpd-compliance.md for detailed requirements.\n\n6.4 GBP / Local SEO (Prominence)\n\nRead and apply:\n\nreferences/gbp-local-seo-playbook.md\n\nDeliverables to produce:\n\nGBP setup checklist (catégories/services/Q&R)\n30-day photo/post/avis plan\nNAP citations list (quality-first, no spam)\n\n6.5 Micro-budget Ads (4€/jour)\n\nRead and apply:\n\nreferences/ads-micro-budget-4eur-playbook.md\n\nDeliverables to produce:\n\n1 campagne ultra-serrée (keywords exact/phrase, zone, horaires, négatifs)\n1 landing dédiée + tracking\n\n6.6 Conversion Tracking\n\nContactForm component automatically captures UTM parameters from URL:\n\nutm_source (e.g., google, facebook)\nutm_campaign (campaign name)\nutm_adset (ad set name)\nutm_ad (specific ad)\n\nThese are stored in form state and can be sent to backend/CRM for attribution tracking."
      },
      {
        "title": "Phase 7: Validation and Delivery",
        "body": "7.1 Test in Browser\n\nOpen dev server URL and verify:\n\nAll pages load without errors\nNavigation works (header menu, breadcrumbs)\nForms submit correctly\nMobile responsive (test sticky CTA buttons)\nCookie banner appears on first visit\nImages load correctly\n\n7.2 SEO Validation\n\nVerify against references/seo-checklist.md:\n\nUnique title and description on each page\nH1 hierarchy correct\nImages have alt attributes\nrobots.txt and sitemap.xml accessible\nStructured data present on key pages\n\n7.3 Create Checkpoint\n\nwebdev_save_checkpoint \"Complete lead-gen website - [X] pages, SEO optimized, RGPD compliant\"\n\n7.4 Deliver to User\n\nSend checkpoint attachment via message tool with:\n\nSummary of what was built\nPage count and key features\nSEO optimizations implemented\nNext steps (publish, custom domain, Google Search Console)"
      },
      {
        "title": "Scripts",
        "body": "scripts/generate_pages_batch.py\nGenerate multiple similar pages from template and data file.\nUsage: python generate_pages_batch.py <template> <data_json> <output_dir>\n\nscripts/create_seo_files.py\nGenerate robots.txt and sitemap.xml automatically.\nUsage: python create_seo_files.py <domain> <pages_json> <output_dir>\n\nscripts/generate_content_structure.py\nCreate content structure markdown from specifications JSON.\nUsage: python generate_content_structure.py <specs_json> <output_md>"
      },
      {
        "title": "Templates",
        "body": "Components:\n\ncomponent-Header.tsx - Sticky header with logo, nav, CTA\ncomponent-Footer.tsx - Footer with links and contact info\ncomponent-SEOHead.tsx - SEO meta tags and structured data\ncomponent-Breadcrumbs.tsx - Navigation breadcrumbs\ncomponent-ContactForm.tsx - Form with UTM tracking\ncomponent-CookieBanner.tsx - RGPD cookie consent banner\n\nPages:\n\npage-service-template.tsx - Service page template\npage-legal-template.tsx - Legal page template\ndesign-ideas-template.md - Design brainstorming structure"
      },
      {
        "title": "References",
        "body": "references/seo-checklist.md\nComplete SEO checklist covering meta tags, structured data, technical SEO, on-page SEO, local SEO, and content quality. Read this before Phase 6 to ensure nothing is missed.\n\nreferences/conversion-best-practices.md\nBest practices for maximizing conversions: CTA strategy, contact options, trust signals, form optimization, mobile optimization. Consult during Phase 5 when building pages.\n\nreferences/rgpd-compliance.md\nComplete RGPD compliance guide covering cookie banner, privacy policy, cookie policy, legal mentions, forms, consent, data security, and user rights. Essential for Phase 6.\n\nreferences/design-philosophies.md\nFive example design philosophies (Neo-Artisanat Digital, Brutalist Confidence, Soft Modernism, Vibrant Energy, Luxury Minimalism) with selection criteria. Use as inspiration during Phase 2."
      },
      {
        "title": "Tips and Best Practices",
        "body": "Design consistency: Document chosen design philosophy at the top of each CSS/component file as a reminder.\n\nImage optimization: All images should be stored in /home/ubuntu/webdev-static-assets/ and referenced via CDN URLs to avoid deployment timeouts.\n\nContent quality over quantity: Better to have 10 excellent pages than 20 mediocre ones. Focus on answering user intent.\n\nMobile-first: Design and test mobile experience first. Most local service searches happen on mobile.\n\nConversion priority: Every page should have clear CTAs. Phone and WhatsApp buttons should be always visible on mobile.\n\nLocal SEO: Mention city/region name in titles, H1, and content. Create separate pages for each service area if covering multiple cities.\n\nFast iteration: Use batch generation scripts for similar pages to save time. Focus manual effort on unique, high-value pages.\n\nTesting: Always test in browser before creating checkpoint. Check mobile responsive, form submission, and navigation."
      },
      {
        "title": "Common Pitfalls",
        "body": "Skipping design brainstorming: Leads to generic, forgettable designs. Always create ideas.md with 3 distinct approaches.\n\nGenerating images during development: Inefficient. Generate all images upfront in Phase 3.\n\nWeak content: Thin content (<300 words) won't rank. Invest time in Phase 4 to create substantial, helpful content.\n\nMissing RGPD elements: Cookie banner, privacy policy, and legal mentions are REQUIRED in EU. Don't skip Phase 6.3.\n\nNo UTM tracking: Without UTM parameters, you can't measure campaign effectiveness. Ensure ContactForm captures them.\n\nForgetting mobile CTAs: Desktop-only CTAs lose mobile conversions. Always add sticky mobile buttons.\n\nCreating checkpoint during development: Only create ONE checkpoint at the end (Phase 7). Multiple checkpoints confuse users during initial delivery."
      }
    ],
    "body": "Lead Generation Website Builder\n\nBuild conversion-optimized local service websites with complete SEO, tracking, and RGPD compliance — avec garde-fous anti-spam (Google Spam Policies + March 2024), local SEO (GBP) et micro-budget ads.\n\nWhen to Use This Skill\n\nUse this skill when the user requests a website for:\n\nLocal service businesses (home services, repairs, professional services)\nLead generation focused on specific geographic areas\nSites requiring 10-20+ pages with service pages, blog, and legal pages\nSEO-optimized content targeting local keywords\nConversion tracking (phone, WhatsApp, forms with UTM parameters)\nRGPD/GDPR compliance (cookie banner, privacy policy, legal pages)\nWorkflow Overview\n\nFollow these phases sequentially. Do NOT skip phases or combine them without clear reason.\n\nPolicy / Risk Check (mandatory)\nRead references/google-spam-guardrails-2024.md\nExplicitly verify: no doorway pages, no scaled generic content, no fake address/avis, no misleading claims.\nIf the project is mise en relation (leadgen): require clear disclosure on all key pages.\n\nThen continue with Phases 1→7.\n\nPhase 1: Analysis and Planning\n\nGather project requirements from the user or specifications document.\n\nRequired information:\n\nBusiness niche and services offered\nGeographic target area (city + radius)\nTarget keywords for SEO\nContact information (phone, WhatsApp, email)\nNumber and types of pages needed\nCompetitor websites (for differentiation)\n\nOutput: Clear understanding of project scope, target audience, and conversion goals.\n\nPhase 2: Design Brainstorming\n\nCreate ideas.md in the project root with THREE distinct design approaches.\n\nUse templates/design-ideas-template.md as structure. Each approach must define:\n\nDesign movement and aesthetic philosophy\nColor palette with hex codes and emotional intent\nTypography system (headings + body fonts)\nLayout paradigm (avoid generic centered layouts)\nSignature visual elements\nAnimation guidelines\nInteraction philosophy\n\nConsult references/design-philosophies.md for inspiration, but create original combinations.\n\nSelection: Choose ONE approach and document the rationale. This design philosophy will guide ALL subsequent design decisions.\n\nPhase 3: Visual Assets Generation\n\nGenerate 3-5 high-quality images using generate tool. These images MUST:\n\nAlign with the chosen design philosophy (colors, mood, style)\nBe stored in /home/ubuntu/webdev-static-assets/\nCover key visual needs: hero background, service illustrations, local landmarks, team/artisan photos\n\nPlan strategic usage:\n\nHero section: Most impactful image\nService pages: Relevant illustrations\nAbout/Trust sections: Team or local landmark photos\n\nDo NOT generate images on-the-fly during development. Generate all at once for efficiency.\n\nPhase 4: Content Structure\n\nCreate detailed content structure for all pages.\n\nOption A (Manual): Write content-structure.md directly with sections for each page including title, meta description, H1, and main content outline.\n\nOption B (Script): Create specs.json with page data, then run:\n\npython /home/ubuntu/skills/lead-gen-website/scripts/generate_content_structure.py specs.json content-structure.md\n\n\nContent requirements:\n\nMinimum 500 words per main page (homepage, main services)\nMinimum 1000 words per blog article\nInclude target keywords naturally (no stuffing)\nAnswer user intent (what, why, how, cost, area)\nLocal focus (mention city/region frequently)\nPhase 5: Development\n\nInitialize project and build all pages.\n\n5.1 Initialize Project\nwebdev_init_project <project-name>\n\n5.2 Configure Design Tokens\n\nEdit client/src/index.css with chosen design philosophy:\n\nUpdate CSS variables for colors (primary, secondary, accent, background, foreground)\nConfigure typography (font-family for sans, serif)\nAdjust shadows, radius, animations\n\nAdd Google Fonts in client/index.html:\n\n<link rel=\"preconnect\" href=\"https://fonts.googleapis.com\" />\n<link rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin />\n<link href=\"https://fonts.googleapis.com/css2?family=YourFont:wght@400;600;700&display=swap\" rel=\"stylesheet\" />\n\n5.3 Create Reusable Components\n\nUse templates from templates/ directory. Replace placeholders with project-specific values:\n\nHeader (templates/component-Header.tsx):\n\n{{SITE_NAME}}, {{SITE_TAGLINE}}, {{SITE_INITIALS}}\n{{PHONE_NUMBER}}, {{WHATSAPP_NUMBER}}\n{{NAV_ITEMS}} (JSON array of {label, href})\n\nFooter (templates/component-Footer.tsx):\n\n{{SITE_NAME}}, {{SITE_DESCRIPTION}}\n{{SERVICE_LINKS}}, {{UTILITY_LINKS}}\n{{PHONE_NUMBER}}, {{EMAIL}}, {{LOCATION}}\n\nSEOHead (templates/component-SEOHead.tsx):\n\nReplace {{DOMAIN}} with actual domain\n\nOther components: Breadcrumbs, ContactForm, CookieBanner (copy as-is, minimal customization needed)\n\n5.4 Build Pages\n\nFor similar pages (services, blog articles):\n\nCreate template file (e.g., service-template.tsx) using templates/page-service-template.tsx\nCreate data file (e.g., services-data.json) with array of page data\nRun batch generation:\npython /home/ubuntu/skills/lead-gen-website/scripts/generate_pages_batch.py service-template.tsx services-data.json client/src/pages/\n\n\nFor unique pages (homepage, tarifs, FAQ, contact): Build manually with rich, custom content. Use components for consistency.\n\nFor legal pages: Use templates/page-legal-template.tsx with standard legal content.\n\n5.5 Update App.tsx\n\nAdd all routes to client/src/App.tsx:\n\n<Route path=\"/service-page\" component={ServicePage} />\n\n\nIntegrate Header, Footer, and CookieBanner in App layout.\n\nPhase 6: SEO, Tracking, GBP, Ads\n6.1 Generate SEO Files\n\nCreate pages.json with all URLs and priorities:\n\n[\n  {\"url\": \"/\", \"priority\": \"1.0\"},\n  {\"url\": \"/service\", \"priority\": \"0.9\"},\n  {\"url\": \"/contact\", \"priority\": \"0.9\"},\n  {\"url\": \"/blog\", \"priority\": \"0.6\"},\n  {\"url\": \"/mentions-legales\", \"priority\": \"0.3\"}\n]\n\n\nRun script:\n\npython /home/ubuntu/skills/lead-gen-website/scripts/create_seo_files.py yourdomain.com pages.json client/public/\n\n\nThis creates robots.txt and sitemap.xml in client/public/.\n\n6.2 Add Structured Data\n\nAdd JSON-LD structured data to key pages using SEOHead component's jsonLd prop:\n\nHomepage (LocalBusiness):\n\nconst jsonLd = {\n  \"@context\": \"https://schema.org\",\n  \"@type\": \"LocalBusiness\",\n  \"name\": \"Business Name\",\n  \"telephone\": \"+33123456789\",\n  \"email\": \"contact@example.com\",\n  \"address\": {\n    \"@type\": \"PostalAddress\",\n    \"addressLocality\": \"City\",\n    \"addressCountry\": \"FR\"\n  },\n  \"areaServed\": [\"City1\", \"City2\"],\n  \"openingHours\": \"Mo-Fr 08:00-18:00\"\n};\n\n\nService pages (Service):\n\nconst jsonLd = {\n  \"@context\": \"https://schema.org\",\n  \"@type\": \"Service\",\n  \"name\": \"Service Name\",\n  \"description\": \"Service description\",\n  \"provider\": {\n    \"@type\": \"LocalBusiness\",\n    \"name\": \"Business Name\"\n  },\n  \"areaServed\": \"City\"\n};\n\n\nConsult references/seo-checklist.md for complete SEO requirements.\n\n6.3 RGPD Compliance\n\nVerify:\n\nCookieBanner component is integrated in App.tsx\nPrivacy policy page exists with complete RGPD information\nCookie policy page exists\nLegal mentions page exists\nContactForm includes link to privacy policy\n\nConsult references/rgpd-compliance.md for detailed requirements.\n\n6.4 GBP / Local SEO (Prominence)\n\nRead and apply:\n\nreferences/gbp-local-seo-playbook.md\n\nDeliverables to produce:\n\nGBP setup checklist (catégories/services/Q&R)\n30-day photo/post/avis plan\nNAP citations list (quality-first, no spam)\n6.5 Micro-budget Ads (4€/jour)\n\nRead and apply:\n\nreferences/ads-micro-budget-4eur-playbook.md\n\nDeliverables to produce:\n\n1 campagne ultra-serrée (keywords exact/phrase, zone, horaires, négatifs)\n1 landing dédiée + tracking\n6.6 Conversion Tracking\n\nContactForm component automatically captures UTM parameters from URL:\n\nutm_source (e.g., google, facebook)\nutm_campaign (campaign name)\nutm_adset (ad set name)\nutm_ad (specific ad)\n\nThese are stored in form state and can be sent to backend/CRM for attribution tracking.\n\nPhase 7: Validation and Delivery\n7.1 Test in Browser\n\nOpen dev server URL and verify:\n\nAll pages load without errors\nNavigation works (header menu, breadcrumbs)\nForms submit correctly\nMobile responsive (test sticky CTA buttons)\nCookie banner appears on first visit\nImages load correctly\n7.2 SEO Validation\n\nVerify against references/seo-checklist.md:\n\nUnique title and description on each page\nH1 hierarchy correct\nImages have alt attributes\nrobots.txt and sitemap.xml accessible\nStructured data present on key pages\n7.3 Create Checkpoint\nwebdev_save_checkpoint \"Complete lead-gen website - [X] pages, SEO optimized, RGPD compliant\"\n\n7.4 Deliver to User\n\nSend checkpoint attachment via message tool with:\n\nSummary of what was built\nPage count and key features\nSEO optimizations implemented\nNext steps (publish, custom domain, Google Search Console)\nBundled Resources\nScripts\n\nscripts/generate_pages_batch.py Generate multiple similar pages from template and data file. Usage: python generate_pages_batch.py <template> <data_json> <output_dir>\n\nscripts/create_seo_files.py Generate robots.txt and sitemap.xml automatically. Usage: python create_seo_files.py <domain> <pages_json> <output_dir>\n\nscripts/generate_content_structure.py Create content structure markdown from specifications JSON. Usage: python generate_content_structure.py <specs_json> <output_md>\n\nTemplates\n\nComponents:\n\ncomponent-Header.tsx - Sticky header with logo, nav, CTA\ncomponent-Footer.tsx - Footer with links and contact info\ncomponent-SEOHead.tsx - SEO meta tags and structured data\ncomponent-Breadcrumbs.tsx - Navigation breadcrumbs\ncomponent-ContactForm.tsx - Form with UTM tracking\ncomponent-CookieBanner.tsx - RGPD cookie consent banner\n\nPages:\n\npage-service-template.tsx - Service page template\npage-legal-template.tsx - Legal page template\ndesign-ideas-template.md - Design brainstorming structure\nReferences\n\nreferences/seo-checklist.md Complete SEO checklist covering meta tags, structured data, technical SEO, on-page SEO, local SEO, and content quality. Read this before Phase 6 to ensure nothing is missed.\n\nreferences/conversion-best-practices.md Best practices for maximizing conversions: CTA strategy, contact options, trust signals, form optimization, mobile optimization. Consult during Phase 5 when building pages.\n\nreferences/rgpd-compliance.md Complete RGPD compliance guide covering cookie banner, privacy policy, cookie policy, legal mentions, forms, consent, data security, and user rights. Essential for Phase 6.\n\nreferences/design-philosophies.md Five example design philosophies (Neo-Artisanat Digital, Brutalist Confidence, Soft Modernism, Vibrant Energy, Luxury Minimalism) with selection criteria. Use as inspiration during Phase 2.\n\nTips and Best Practices\n\nDesign consistency: Document chosen design philosophy at the top of each CSS/component file as a reminder.\n\nImage optimization: All images should be stored in /home/ubuntu/webdev-static-assets/ and referenced via CDN URLs to avoid deployment timeouts.\n\nContent quality over quantity: Better to have 10 excellent pages than 20 mediocre ones. Focus on answering user intent.\n\nMobile-first: Design and test mobile experience first. Most local service searches happen on mobile.\n\nConversion priority: Every page should have clear CTAs. Phone and WhatsApp buttons should be always visible on mobile.\n\nLocal SEO: Mention city/region name in titles, H1, and content. Create separate pages for each service area if covering multiple cities.\n\nFast iteration: Use batch generation scripts for similar pages to save time. Focus manual effort on unique, high-value pages.\n\nTesting: Always test in browser before creating checkpoint. Check mobile responsive, form submission, and navigation.\n\nCommon Pitfalls\n\nSkipping design brainstorming: Leads to generic, forgettable designs. Always create ideas.md with 3 distinct approaches.\n\nGenerating images during development: Inefficient. Generate all images upfront in Phase 3.\n\nWeak content: Thin content (<300 words) won't rank. Invest time in Phase 4 to create substantial, helpful content.\n\nMissing RGPD elements: Cookie banner, privacy policy, and legal mentions are REQUIRED in EU. Don't skip Phase 6.3.\n\nNo UTM tracking: Without UTM parameters, you can't measure campaign effectiveness. Ensure ContactForm captures them.\n\nForgetting mobile CTAs: Desktop-only CTAs lose mobile conversions. Always add sticky mobile buttons.\n\nCreating checkpoint during development: Only create ONE checkpoint at the end (Phase 7). Multiple checkpoints confuse users during initial delivery."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/LucasGulino/lead-gen-website",
    "publisherUrl": "https://clawhub.ai/LucasGulino/lead-gen-website",
    "owner": "LucasGulino",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/lead-gen-website",
    "downloadUrl": "https://openagent3.xyz/downloads/lead-gen-website",
    "agentUrl": "https://openagent3.xyz/skills/lead-gen-website/agent",
    "manifestUrl": "https://openagent3.xyz/skills/lead-gen-website/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/lead-gen-website/agent.md"
  }
}