# 4NK Integration Guide ## 🎯 Modes d'utilisation Le site 4NK peut être utilisé de deux façons : ### 1. **Mode Normal** (Site autonome) - **URL** : http://localhost:3004 - **Interface** : Header complet + navigation normale - **Utilisation** : Application standalone - **Fonctionnalités** : Toutes les fonctionnalités disponibles ### 2. **Mode Iframe** (Intégration externe) - **URL** : http://localhost:3004 (détection automatique) - **Interface** : Header masqué + menu intégré dans le contenu - **Utilisation** : Intégration dans un site externe - **Fonctionnalités** : Communication bidirectionnelle avec le parent ## 🔧 Détection automatique Le site détecte automatiquement s'il est chargé dans une iframe : ```javascript // Détection iframe if (window.parent !== window) { // Mode iframe activé document.body.classList.add('iframe-mode'); // Header masqué automatiquement } ``` ## 📱 Interface adaptative ### Mode Normal ``` ┌─────────────────────────────────────┐ │ Header (Navigation, Logo, etc.) │ ├─────────────────────────────────────┤ │ Contenu principal │ │ ├── Titre et description │ │ ├── Interface de pairing │ │ └── Boutons d'action │ └─────────────────────────────────────┘ ``` ### Mode Iframe ``` ┌─────────────────────────────────────┐ │ Contenu principal (sans header) │ │ ├── Titre et description │ │ ├── Menu intégré (Home, Account...) │ │ ├── Interface de pairing │ │ └── Boutons d'action │ └─────────────────────────────────────┘ ``` ## 🔄 Communication iframe ### Messages envoyés au parent - `IFRAME_READY` : Iframe initialisé - `MENU_NAVIGATION` : Navigation du menu - `PAIRING_4WORDS_WORDS_GENERATED` : 4 mots générés - `PAIRING_4WORDS_STATUS_UPDATE` : Mise à jour du statut - `PAIRING_4WORDS_SUCCESS` : Pairing réussi - `PAIRING_4WORDS_ERROR` : Erreur de pairing - `TEST_RESPONSE` : Réponse à un message de test - `LISTENING` : Notification que l'iframe écoute les messages ### Messages reçus du parent - `TEST_MESSAGE` : Test de communication - `PAIRING_4WORDS_CREATE` : Créer un pairing - `PAIRING_4WORDS_JOIN` : Rejoindre avec 4 mots - `LISTENING` : Notification que le parent écoute les messages - `IFRAME_READY` : Notification que l'iframe est prête (envoyée par l'iframe elle-même) ## 🧪 Tests d'intégration ### Test rapide ```bash # Ouvrir dans le navigateur open examples/test-integration.html ``` ### Test complet ```bash # Site externe d'exemple open examples/external-site.html ``` ## 🎨 Styles CSS Les styles s'adaptent automatiquement : ```css /* Styles normaux */ .title-container { /* ... */ } /* Styles iframe */ .iframe-mode .content-menu { /* ... */ } .iframe-mode .menu-btn { /* ... */ } ``` ## 🚀 Utilisation en production ### 1. Site autonome ```html ``` ### 2. Intégration personnalisée ```html