0%
Aymen
Retour aux projets
WebLivré2026

Landing Agents

Générateur de pages de vente par IA pour les vendeurs arabophones — il planifie la page section par section, génère les visuels avec Gemini, puis la publie sur Cloudflare Pages avec un paiement WooCommerce rattaché.

Mon rôle
Développeur Full Stack
Période
mai 2025 — avr. 2026
Statut
Livré
Aperçu

Landing Agents transforme une description d'activité rédigée en langage courant en une page de vente opérationnelle. Le vendeur écrit quelques phrases sur ce qu'il vend ; des agents pilotés par Gemini planifient la structure de la page, rédigent chaque section, génèrent les visuels, puis itèrent avec l'utilisateur jusqu'à ce que la page soit prête — pour aboutir à un déploiement sur Cloudflare Pages avec un paiement WooCommerce rattaché.

Côté backend, un serveur Fastify organisé selon DDD et CQRS : la génération et la publication s'exécutent comme des commandes côté écriture, tandis que l'interface du builder lit via des handlers de requête dédiés. Le client React suit le patron MVVM — les vues restent purement présentationnelles, les ViewModels concentrent l'état et la logique — ce qui permet de faire évoluer l'interface sans toucher aux règles métier.

Le défi

Le problème à résoudre

La plupart des vendeurs qui ont besoin d'une landing page ne savent ni rédiger un texte de conversion, ni concevoir des sections, ni configurer l'hébergement et le paiement — et un prompt LLM unique leur livre un bloc de texte générique impossible à retravailler sérieusement. Le vrai problème était structurel : transformer une description libre d'activité en une page planifiée, générée et révisée morceau par morceau, tout en gardant cohérents le flux de génération, l'état d'édition et le pipeline de publication derrière une même API.

La solution

Comment cela a été construit

Le flux de génération est découpé en agents à responsabilité étroite : l'un planifie la page comme une suite ordonnée de sections, d'autres génèrent le texte et les visuels Gemini par section, et la boucle d'itération permet de reprendre une section précise sans régénérer la page entière. Côté serveur, le DDD isole le modèle métier de la couche de transport, et le CQRS sépare les commandes de génération, lourdes en écriture, des lectures dont dépend l'interface du builder. Le client est en React MVVM : les pages affichent l'état, les ViewModels orchestrent les appels aux agents et les modifications.

La publication est une commande comme les autres : la page finale est déployée sur Cloudflare Pages avec un paiement WooCommerce rattaché — le résultat vend, il ne se contente pas de s'afficher.

Fonctionnalités clés

Ce que ça fait

💬

Description en langage courant

Le vendeur décrit son activité en langage courant, et cette description est la seule entrée nécessaire : les agents en dérivent le plan de la page, les textes et les visuels.

🧠

Planification section par section

Un agent planifie la page de vente comme une suite ordonnée de sections avant toute génération : le résultat a une structure délibérée plutôt qu'un long bloc de texte généré.

🎨

Visuels générés par Gemini

Les visuels sont générés avec Gemini pour coller aux sections planifiées : chaque page reçoit des images propres à l'activité plutôt que des photos de banque d'images.

🔁

Itération pilotée par agents

La génération est une boucle, pas un tir unique : l'utilisateur réagit et les agents révisent la page, section par section, jusqu'à ce qu'elle convienne.

☁️

Publication sur Cloudflare Pages

La page finale est déployée sur Cloudflare Pages au sein même du flux : l'hébergement est pris en charge par le produit, pas laissé à la charge du vendeur.

🛒

Paiement WooCommerce intégré

Chaque page publiée embarque un paiement WooCommerce : la landing page devient un point de vente, pas une simple vitrine.

Technologies utilisées

Construit avec

Frontend

Next.js

Next.js porte le client React MVVM : le routage et le rendu sont fournis par le framework, les composants de page restent présentationnels et toute la logique du builder vit dans les ViewModels.

Backend

Fastify

Les routes légères et validées par schéma de Fastify offrent au serveur DDD + CQRS une couche de transport nette, chaque commande et chaque requête correspondant à un endpoint typé.

Données

PostgreSQL

PostgreSQL soutient le côté écriture avec un stockage relationnel et transactionnel, gardant pages, sections et état de génération cohérents au fil des commandes.