Widget D1DEV
Widget JS universel embeddable sur tous les sous-domaines *.d1dev.fr. Trois modes de fonctionnement avec configuration par attributs.
Les 3 modes
Standard
Mode par defaut. Le widget affiche un bouton flottant qui ouvre un formulaire de contact. L'utilisateur peut choisir entre un agent IA et un humain.
Human Mode
Le formulaire est toujours visible (pas de bouton flottant). Force l'affichage du formulaire humain directement.
AI-Only
Mode agent IA uniquement. Pas d'option humain, conversation directe avec l'IA.
Pages demo
| Mode | URL | Parametres |
|---|---|---|
| Standard | widget.d1dev.fr | (aucun) |
| Human Mode | widget.d1dev.fr?test=&story=human | humanMode=true |
| AI-Only | widget.d1dev.fr?test=&story=ai | autoAssign=ai |
Le parametre
?test=&story=XXX active le bandeau de test qui affiche le mode actif.
Installation
Pour integrer le widget sur n'importe quel site :
<!-- Widget D1DEV -->
<script src="https://widget.d1dev.fr/widget.umd.js"></script>
<script>
D1Widget.init({
// Options
humanMode: false, // true = formulaire toujours visible
autoAssign: null, // 'ai' = forcer agent IA
testBanner: false // true = bandeau de test
});
</script>
Configuration
| Option | Type | Defaut | Description |
|---|---|---|---|
humanMode | boolean | false | Formulaire toujours visible |
autoAssign | string|null | null | Forcer agent : 'ai' ou 'human' |
testBanner | boolean | false | Afficher le bandeau de test |
Stack technique
| Framework | React 18 + Vite |
|---|---|
| Build | UMD bundle (widget.umd.js) |
| Deploiement | nginx:alpine via Dockerfile.widget |
| URL | widget.d1dev.fr |
Architecture
widget/
├── src/
│ ├── App.tsx # Composant principal
│ ├── main.tsx # Point d'entree UMD
│ └── components/ # Composants UI
├── public/
│ └── index.html # Page demo
├── vite.config.ts # Config Vite (build UMD)
└── CLAUDE.md # Documentation agent