4.3k★by lucasgulino
lead-gen-website – OpenClaw Skill
lead-gen-website is an OpenClaw Skills integration for coding workflows. Build complete local lead generation websites with SEO optimization, conversion tracking, and RGPD compliance. Use for creating service-based websites targeting local markets (plumbers, electricians, home services, etc.) with 10-20 pages, structured data, analytics, and legal compliance.
Skill Snapshot
| name | lead-gen-website |
| description | Build complete local lead generation websites with SEO optimization, conversion tracking, and RGPD compliance. Use for creating service-based websites targeting local markets (plumbers, electricians, home services, etc.) with 10-20 pages, structured data, analytics, and legal compliance. OpenClaw Skills integration. |
| owner | lucasgulino |
| repository | lucasgulino/lead-gen-website |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @lucasgulino/lead-gen-website |
| last updated | Feb 7, 2026 |
Maintainer

name: lead-gen-website description: Build complete local lead generation websites with SEO optimization, conversion tracking, and RGPD compliance. Use for creating service-based websites targeting local markets (plumbers, electricians, home services, etc.) with 10-20 pages, structured data, analytics, and legal compliance.
Lead Generation Website Builder
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.
When to Use This Skill
Use this skill when the user requests a website for:
- Local service businesses (home services, repairs, professional services)
- Lead generation focused on specific geographic areas
- Sites requiring 10-20+ pages with service pages, blog, and legal pages
- SEO-optimized content targeting local keywords
- Conversion tracking (phone, WhatsApp, forms with UTM parameters)
- RGPD/GDPR compliance (cookie banner, privacy policy, legal pages)
Workflow Overview
Follow these phases sequentially. Do NOT skip phases or combine them without clear reason.
- Policy / Risk Check (mandatory)
- Read
references/google-spam-guardrails-2024.md - Explicitly verify: no doorway pages, no scaled generic content, no fake address/avis, no misleading claims.
- If the project is mise en relation (leadgen): require clear disclosure on all key pages.
Then continue with Phases 1→7.
Phase 1: Analysis and Planning
Gather project requirements from the user or specifications document.
Required information:
- Business niche and services offered
- Geographic target area (city + radius)
- Target keywords for SEO
- Contact information (phone, WhatsApp, email)
- Number and types of pages needed
- Competitor websites (for differentiation)
Output: Clear understanding of project scope, target audience, and conversion goals.
Phase 2: Design Brainstorming
Create ideas.md in the project root with THREE distinct design approaches.
Use templates/design-ideas-template.md as structure. Each approach must define:
- Design movement and aesthetic philosophy
- Color palette with hex codes and emotional intent
- Typography system (headings + body fonts)
- Layout paradigm (avoid generic centered layouts)
- Signature visual elements
- Animation guidelines
- Interaction philosophy
Consult references/design-philosophies.md for inspiration, but create original combinations.
Selection: Choose ONE approach and document the rationale. This design philosophy will guide ALL subsequent design decisions.
Phase 3: Visual Assets Generation
Generate 3-5 high-quality images using generate tool. These images MUST:
- Align with the chosen design philosophy (colors, mood, style)
- Be stored in
/home/ubuntu/webdev-static-assets/ - Cover key visual needs: hero background, service illustrations, local landmarks, team/artisan photos
Plan strategic usage:
- Hero section: Most impactful image
- Service pages: Relevant illustrations
- About/Trust sections: Team or local landmark photos
Do NOT generate images on-the-fly during development. Generate all at once for efficiency.
Phase 4: Content Structure
Create detailed content structure for all pages.
Option A (Manual): Write content-structure.md directly with sections for each page including title, meta description, H1, and main content outline.
Option B (Script): Create specs.json with page data, then run:
python /home/ubuntu/skills/lead-gen-website/scripts/generate_content_structure.py specs.json content-structure.md
Content requirements:
- Minimum 500 words per main page (homepage, main services)
- Minimum 1000 words per blog article
- Include target keywords naturally (no stuffing)
- Answer user intent (what, why, how, cost, area)
- Local focus (mention city/region frequently)
Phase 5: Development
Initialize project and build all pages.
5.1 Initialize Project
webdev_init_project <project-name>
5.2 Configure Design Tokens
Edit client/src/index.css with chosen design philosophy:
- Update CSS variables for colors (primary, secondary, accent, background, foreground)
- Configure typography (font-family for sans, serif)
- Adjust shadows, radius, animations
Add Google Fonts in client/index.html:
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=YourFont:wght@400;600;700&display=swap" rel="stylesheet" />
5.3 Create Reusable Components
Use templates from templates/ directory. Replace placeholders with project-specific values:
Header (templates/component-Header.tsx):
{{SITE_NAME}},{{SITE_TAGLINE}},{{SITE_INITIALS}}{{PHONE_NUMBER}},{{WHATSAPP_NUMBER}}{{NAV_ITEMS}}(JSON array of{label, href})
Footer (templates/component-Footer.tsx):
{{SITE_NAME}},{{SITE_DESCRIPTION}}{{SERVICE_LINKS}},{{UTILITY_LINKS}}{{PHONE_NUMBER}},{{EMAIL}},{{LOCATION}}
SEOHead (templates/component-SEOHead.tsx):
- Replace
{{DOMAIN}}with actual domain
Other components: Breadcrumbs, ContactForm, CookieBanner (copy as-is, minimal customization needed)
5.4 Build Pages
For similar pages (services, blog articles):
- Create template file (e.g.,
service-template.tsx) usingtemplates/page-service-template.tsx - Create data file (e.g.,
services-data.json) with array of page data - Run batch generation:
python /home/ubuntu/skills/lead-gen-website/scripts/generate_pages_batch.py service-template.tsx services-data.json client/src/pages/
For unique pages (homepage, tarifs, FAQ, contact): Build manually with rich, custom content. Use components for consistency.
For legal pages:
Use templates/page-legal-template.tsx with standard legal content.
5.5 Update App.tsx
Add all routes to client/src/App.tsx:
<Route path="/service-page" component={ServicePage} />
Integrate Header, Footer, and CookieBanner in App layout.
Phase 6: SEO, Tracking, GBP, Ads
6.1 Generate SEO Files
Create pages.json with all URLs and priorities:
[
{"url": "/", "priority": "1.0"},
{"url": "/service", "priority": "0.9"},
{"url": "/contact", "priority": "0.9"},
{"url": "/blog", "priority": "0.6"},
{"url": "/mentions-legales", "priority": "0.3"}
]
Run script:
python /home/ubuntu/skills/lead-gen-website/scripts/create_seo_files.py yourdomain.com pages.json client/public/
This creates robots.txt and sitemap.xml in client/public/.
6.2 Add Structured Data
Add JSON-LD structured data to key pages using SEOHead component's jsonLd prop:
Homepage (LocalBusiness):
const jsonLd = {
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "Business Name",
"telephone": "+33123456789",
"email": "contact@example.com",
"address": {
"@type": "PostalAddress",
"addressLocality": "City",
"addressCountry": "FR"
},
"areaServed": ["City1", "City2"],
"openingHours": "Mo-Fr 08:00-18:00"
};
Service pages (Service):
const jsonLd = {
"@context": "https://schema.org",
"@type": "Service",
"name": "Service Name",
"description": "Service description",
"provider": {
"@type": "LocalBusiness",
"name": "Business Name"
},
"areaServed": "City"
};
Consult references/seo-checklist.md for complete SEO requirements.
6.3 RGPD Compliance
Verify:
- CookieBanner component is integrated in App.tsx
- Privacy policy page exists with complete RGPD information
- Cookie policy page exists
- Legal mentions page exists
- ContactForm includes link to privacy policy
Consult references/rgpd-compliance.md for detailed requirements.
6.4 GBP / Local SEO (Prominence)
Read and apply:
references/gbp-local-seo-playbook.md
Deliverables to produce:
- GBP setup checklist (catégories/services/Q&R)
- 30-day photo/post/avis plan
- NAP citations list (quality-first, no spam)
6.5 Micro-budget Ads (4€/jour)
Read and apply:
references/ads-micro-budget-4eur-playbook.md
Deliverables to produce:
- 1 campagne ultra-serrée (keywords exact/phrase, zone, horaires, négatifs)
- 1 landing dédiée + tracking
6.6 Conversion Tracking
ContactForm component automatically captures UTM parameters from URL:
utm_source(e.g., google, facebook)utm_campaign(campaign name)utm_adset(ad set name)utm_ad(specific ad)
These are stored in form state and can be sent to backend/CRM for attribution tracking.
Phase 7: Validation and Delivery
7.1 Test in Browser
Open dev server URL and verify:
- All pages load without errors
- Navigation works (header menu, breadcrumbs)
- Forms submit correctly
- Mobile responsive (test sticky CTA buttons)
- Cookie banner appears on first visit
- Images load correctly
7.2 SEO Validation
Verify against references/seo-checklist.md:
- Unique title and description on each page
- H1 hierarchy correct
- Images have alt attributes
- robots.txt and sitemap.xml accessible
- Structured data present on key pages
7.3 Create Checkpoint
webdev_save_checkpoint "Complete lead-gen website - [X] pages, SEO optimized, RGPD compliant"
7.4 Deliver to User
Send checkpoint attachment via message tool with:
- Summary of what was built
- Page count and key features
- SEO optimizations implemented
- Next steps (publish, custom domain, Google Search Console)
Bundled Resources
Scripts
scripts/generate_pages_batch.py
Generate multiple similar pages from template and data file.
Usage: python generate_pages_batch.py <template> <data_json> <output_dir>
scripts/create_seo_files.py
Generate robots.txt and sitemap.xml automatically.
Usage: python create_seo_files.py <domain> <pages_json> <output_dir>
scripts/generate_content_structure.py
Create content structure markdown from specifications JSON.
Usage: python generate_content_structure.py <specs_json> <output_md>
Templates
Components:
component-Header.tsx- Sticky header with logo, nav, CTAcomponent-Footer.tsx- Footer with links and contact infocomponent-SEOHead.tsx- SEO meta tags and structured datacomponent-Breadcrumbs.tsx- Navigation breadcrumbscomponent-ContactForm.tsx- Form with UTM trackingcomponent-CookieBanner.tsx- RGPD cookie consent banner
Pages:
page-service-template.tsx- Service page templatepage-legal-template.tsx- Legal page templatedesign-ideas-template.md- Design brainstorming structure
References
references/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.
references/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.
references/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.
references/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.
Tips and Best Practices
Design consistency: Document chosen design philosophy at the top of each CSS/component file as a reminder.
Image optimization: All images should be stored in /home/ubuntu/webdev-static-assets/ and referenced via CDN URLs to avoid deployment timeouts.
Content quality over quantity: Better to have 10 excellent pages than 20 mediocre ones. Focus on answering user intent.
Mobile-first: Design and test mobile experience first. Most local service searches happen on mobile.
Conversion priority: Every page should have clear CTAs. Phone and WhatsApp buttons should be always visible on mobile.
Local SEO: Mention city/region name in titles, H1, and content. Create separate pages for each service area if covering multiple cities.
Fast iteration: Use batch generation scripts for similar pages to save time. Focus manual effort on unique, high-value pages.
Testing: Always test in browser before creating checkpoint. Check mobile responsive, form submission, and navigation.
Common Pitfalls
Skipping design brainstorming: Leads to generic, forgettable designs. Always create ideas.md with 3 distinct approaches.
Generating images during development: Inefficient. Generate all images upfront in Phase 3.
Weak content: Thin content (<300 words) won't rank. Invest time in Phase 4 to create substantial, helpful content.
Missing RGPD elements: Cookie banner, privacy policy, and legal mentions are REQUIRED in EU. Don't skip Phase 6.3.
No UTM tracking: Without UTM parameters, you can't measure campaign effectiveness. Ensure ContactForm captures them.
Forgetting mobile CTAs: Desktop-only CTAs lose mobile conversions. Always add sticky mobile buttons.
Creating checkpoint during development: Only create ONE checkpoint at the end (Phase 7). Multiple checkpoints confuse users during initial delivery.
Lead Generation Website Builder Skill
Une compétence Manus complète pour construire des sites web de génération de leads locaux avec optimisation SEO, tracking de conversion et conformité RGPD.
Vue d'ensemble
Cette compétence capture le processus complet utilisé pour construire le site Relais Volets Metz et le rend réutilisable pour tout projet de site web de génération de leads local. Elle inclut des scripts d'automatisation, des templates de composants React, et des guides de référence détaillés.
Quand utiliser cette compétence
Utilisez cette compétence lorsque l'utilisateur demande un site web pour :
- Services locaux (artisans, dépannage, services professionnels)
- Génération de leads ciblant une zone géographique spécifique
- Sites nécessitant 10-20+ pages (services, blog, pages légales)
- Contenu SEO optimisé pour mots-clés locaux
- Tracking de conversion (téléphone, WhatsApp, formulaires avec paramètres UTM)
- Conformité RGPD (bandeau cookies, politique de confidentialité, mentions légales)
Structure de la compétence
lead-gen-website/
├── SKILL.md # Instructions principales (workflow en 7 phases)
├── scripts/ # Scripts Python d'automatisation
│ ├── generate_pages_batch.py # Génération batch de pages similaires
│ ├── create_seo_files.py # Génération robots.txt + sitemap.xml
│ └── generate_content_structure.py # Génération structure de contenu
├── templates/ # Templates de composants et pages
│ ├── component-Header.tsx # Header sticky avec logo, nav, CTA
│ ├── component-Footer.tsx # Footer avec liens et contact
│ ├── component-SEOHead.tsx # Meta tags SEO et données structurées
│ ├── component-Breadcrumbs.tsx # Fil d'Ariane
│ ├── component-ContactForm.tsx # Formulaire avec tracking UTM
│ ├── component-CookieBanner.tsx # Bandeau cookies RGPD
│ ├── page-service-template.tsx # Template page service
│ ├── page-legal-template.tsx # Template page légale
│ └── design-ideas-template.md # Template brainstorming design
└── references/ # Guides de référence
├── seo-checklist.md # Checklist SEO complète
├── conversion-best-practices.md # Bonnes pratiques conversion
├── rgpd-compliance.md # Guide conformité RGPD
└── design-philosophies.md # Exemples de philosophies de design
Total : 17 fichiers, 1281 lignes de code et documentation
Workflow en 7 phases
La compétence guide l'agent à travers un processus structuré :
Phase 1 : Analyse et Planification
Collecte des exigences du projet (niche, zone géographique, services, mots-clés cibles, informations de contact).
Phase 2 : Brainstorming Design
Création de ideas.md avec 3 approches de design distinctes. Sélection d'une philosophie de design qui guidera toutes les décisions visuelles.
Phase 3 : Génération d'Assets Visuels
Génération de 3-5 images haute qualité alignées avec la philosophie de design choisie. Stockage dans /home/ubuntu/webdev-static-assets/.
Phase 4 : Structure de Contenu
Création de la structure de contenu détaillée pour toutes les pages (minimum 500 mots par page principale, 1000+ pour articles blog).
Phase 5 : Développement
- Initialisation du projet avec
webdev_init_project - Configuration des tokens de design (couleurs, typographie)
- Création des composants réutilisables à partir des templates
- Construction de toutes les pages (utilisation des scripts pour pages similaires)
Phase 6 : SEO et Tracking
- Génération de robots.txt et sitemap.xml avec
create_seo_files.py - Ajout de données structurées Schema.org (LocalBusiness, Service, BreadcrumbList)
- Intégration du bandeau cookies RGPD
- Configuration du tracking UTM dans les formulaires
Phase 7 : Validation et Livraison
- Tests dans le navigateur (navigation, formulaires, responsive)
- Validation SEO contre la checklist
- Création du checkpoint final
- Livraison au client avec documentation
Scripts d'automatisation
generate_pages_batch.py
Génère plusieurs pages similaires à partir d'un template et d'un fichier de données JSON.
Usage :
python generate_pages_batch.py template.tsx data.json output_dir/
Exemple de data.json :
[
{
"component_name": "ServiceA",
"filename": "ServiceA.tsx",
"title": "Service A - Ville",
"h1": "Service A professionnel"
},
{
"component_name": "ServiceB",
"filename": "ServiceB.tsx",
"title": "Service B - Ville",
"h1": "Service B de qualité"
}
]
create_seo_files.py
Génère automatiquement robots.txt et sitemap.xml.
Usage :
python create_seo_files.py domain.com pages.json output_dir/
Exemple de pages.json :
[
{"url": "/", "priority": "1.0"},
{"url": "/service-a", "priority": "0.9"},
{"url": "/contact", "priority": "0.9"},
{"url": "/blog", "priority": "0.6"}
]
generate_content_structure.py
Crée un fichier markdown de structure de contenu à partir de spécifications JSON.
Usage :
python generate_content_structure.py specs.json content-structure.md
Templates de composants
Tous les templates utilisent des placeholders {{VARIABLE}} à remplacer par les valeurs spécifiques au projet.
Composants principaux
- Header : Navigation sticky avec logo, menu desktop/mobile, CTA WhatsApp + Téléphone, boutons sticky mobiles
- Footer : 4 colonnes (À propos, Services, Liens, Contact), mentions légales
- SEOHead : Gestion des balises meta, title, canonical, Open Graph, Twitter Card, JSON-LD
- Breadcrumbs : Fil d'Ariane pour navigation et SEO
- ContactForm : Formulaire avec validation et tracking UTM automatique
- CookieBanner : Bandeau RGPD avec options accepter/refuser, stockage localStorage
Templates de pages
- page-service-template.tsx : Structure complète pour page service (hero, contenu, formulaire)
- page-legal-template.tsx : Structure pour pages légales (mentions, confidentialité, cookies)
Guides de référence
seo-checklist.md (52 lignes)
Checklist complète couvrant :
- Meta tags (title, description, canonical, OG, Twitter)
- Données structurées Schema.org
- SEO technique (robots.txt, sitemap, mobile-first, HTTPS)
- SEO on-page (H1, hiérarchie, mots-clés, liens internes)
- SEO local (nom de ville, pages par zone, NAP)
- Qualité du contenu (originalité, intention utilisateur, FAQs)
conversion-best-practices.md (70 lignes)
Bonnes pratiques pour maximiser les conversions :
- Stratégie CTA (multiples par page, langage action, couleurs contrastées)
- Options de contact (téléphone, WhatsApp, email, formulaire)
- Signaux de confiance (témoignages, certifications, preuves sociales)
- Optimisation formulaires (champs minimaux, validation temps réel, mobile-friendly)
- Optimisation mobile (boutons sticky, click-to-call, touch-friendly)
- Vitesse de page (compression images, minification, CDN)
rgpd-compliance.md (82 lignes)
Guide complet de conformité RGPD :
- Bandeau cookies (affichage, options, stockage consentement)
- Politique de confidentialité (identité responsable, types de données, finalités, durée conservation)
- Politique cookies (types de cookies, gestion)
- Mentions légales (éditeur, hébergeur, directeur publication)
- Formulaires et consentement (case à cocher, lien politique)
- Sécurité des données (HTTPS, sauvegardes, contrôle d'accès)
- Droits des utilisateurs (accès, rectification, suppression, portabilité)
design-philosophies.md (77 lignes)
Cinq exemples de philosophies de design avec critères de sélection :
- Neo-Artisanat Digital : Arts & Crafts + Flat Design (services artisanaux, rénovation)
- Brutalist Confidence : Brutalisme + Swiss Design (services tech, industriel, B2B)
- Soft Modernism : Minimalisme scandinave + Material Design (santé, conseil, services professionnels)
- Vibrant Energy : Memphis Design + Gradient Maximalism (services créatifs, événements)
- Luxury Minimalism : Branding luxe + Minimalisme japonais (services premium, immobilier)
Exemple d'utilisation
Voici comment la compétence a été utilisée pour construire Relais Volets Metz :
- Analyse : Service de mise en relation pour dépannage de volets roulants à Metz
- Design : Philosophie "Néo-Artisanat Digital" (crème, cuivre, vert sauge, typographie Fraunces + DM Sans)
- Assets : 5 images générées (maison lorraine, artisan, mécanisme, cathédrale Metz, façade moderne)
- Contenu : 20 pages (accueil, 6 services, tarifs, zones, FAQ, contact, 5 articles blog, 3 pages légales)
- Développement : Composants réutilisables + génération batch des pages services et blog
- SEO : robots.txt, sitemap.xml, Schema.org LocalBusiness/Service, bandeau cookies RGPD
- Livraison : Site complet en 1 checkpoint, prêt à publier
Résultat : Site de 20 pages, SEO optimisé, RGPD compliant, mobile-first, avec tracking UTM complet.
Avantages de cette compétence
Gain de temps : Les scripts automatisent la génération de pages similaires et fichiers SEO, réduisant le temps de développement de 40-50%.
Consistance : Les templates garantissent une structure cohérente sur toutes les pages et projets.
Qualité SEO : La checklist et les guides assurent que rien n'est oublié (meta tags, données structurées, sitemap).
Conformité légale : Le guide RGPD et les templates de pages légales garantissent la conformité en EU.
Design professionnel : Le processus de brainstorming force la création de designs originaux et cohérents, évitant les sites génériques.
Tracking complet : Le formulaire avec UTM permet de mesurer l'efficacité des campagnes marketing dès le lancement.
Personnalisation
Cette compétence est conçue pour être adaptable :
- Niches différentes : Fonctionne pour tout service local (plomberie, électricité, jardinage, coaching, etc.)
- Nombre de pages : Scalable de 5 à 50+ pages
- Design : 5 philosophies de base + possibilité de créer des variantes
- Langues : Templates en français, facilement traduisibles
- Stack technique : React 19 + Tailwind 4 + shadcn/ui (moderne et performant)
Maintenance et évolution
Pour mettre à jour cette compétence :
- Ajouter de nouveaux templates : Créer de nouveaux fichiers dans
templates/ - Améliorer les scripts : Modifier les scripts Python pour de nouvelles fonctionnalités
- Enrichir les références : Ajouter de nouveaux guides dans
references/ - Mettre à jour SKILL.md : Documenter les nouvelles fonctionnalités dans le workflow
Statistiques
- Fichiers totaux : 17
- Lignes de code/doc : 1281
- Scripts Python : 3 (génération batch, SEO files, structure contenu)
- Templates React : 8 (6 composants + 2 pages)
- Guides de référence : 4 (SEO, conversion, RGPD, design)
- Temps de développement économisé : ~40-50% vs développement manuel
Auteur
Créé par Manus AI à partir du projet Relais Volets Metz (février 2026).
Cette compétence capture les meilleures pratiques de développement web pour la génération de leads locaux, avec un focus sur le SEO, la conversion et la conformité légale.
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
Requirements
- OpenClaw CLI installed and configured.
- Language: Markdown
- License: MIT
- Topics:
FAQ
How do I install lead-gen-website?
Run openclaw add @lucasgulino/lead-gen-website in your terminal. This installs lead-gen-website into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/lucasgulino/lead-gen-website. Review commits and README documentation before installing.
