Fonctionne avec les pages Material for MkDocs
Indexez les guides, les pages de référence et le HTML statique généré à partir des déploiements publics MkDocs ou Material for MkDocs sans remplacer votre thème.
Utilisez ChattyBox pour rendre votre contenu MkDocs consultable via un widget conversationnel qui reste ancré dans vos pages sources.
ChattyBox explore votre documentation existante, indexe le contenu pour la recherche et intègre un chatbot qui répond avec vos docs plutôt qu’avec la mémoire générique du modèle.
Explorez le plan de site MkDocs déployé ou les chemins stables et versionnés que vous prenez délibérément en charge.
Testez des questions sur le produit, Python et l'API, puis ouvrez chaque citation avant l'installation.
Pour Material, configurez theme.custom_dir et étendez base.html depuis overrides/main.html tout en conservant le bloc scripts avec super().
Vérifiez la recherche intégrée, la navigation instantanée, les contrôles mobiles, la CSP et chaque version publiée avec mike.
Un lancement en trois étapes
Les équipes MkDocs souhaitent généralement des versions statiques rapides, une navigation claire et un contenu technique lisible. ChattyBox conserve ce flux de travail intact tout en ajoutant un assistant cité par la source au-dessus du site publié.
Indexez les guides, les pages de référence et le HTML statique généré à partir des déploiements publics MkDocs ou Material for MkDocs sans remplacer votre thème.
Pointez ChattyBox sur les chemins de version sur lesquels vous souhaitez que les utilisateurs posent des questions, puis testez si les réponses citent les documents stables, les plus récents ou les anciens prévus.
Étant donné que ChattyBox explore le site public, les équipes n'ont pas besoin d'ajouter une indexation vectorielle à leur pipeline de génération MkDocs ou à leurs scripts CI.
Utilisez des questions sans réponse pour identifier les exemples manquants, les étapes d'installation peu claires ou les pages de dépannage obsolètes dans votre site MkDocs.
Material for MkDocs et le thème MkDocs intégré prennent tous deux en charge l'héritage de modèles, mais doivent utiliser des répertoires personnalisés distincts. La méthode Material ci-dessous conserve son bloc scripts avec super(), ajoute un seul chargeur asynchrone et résiste à la navigation instantanée sans remplacer le comportement de recherche.
Vérifiez de nouveau les blocs de modèles et le comportement de la navigation instantanée après les mises à niveau du thème, et relancez l'exploration chaque fois qu'un alias mike est déplacé.
| Point d'attention pour MkDocs | Décision d'implémentation | Vérification |
|---|---|---|
| Surcharge de Material | Définissez theme.name sur material et theme.custom_dir sur overrides. Étendez base.html, surchargez scripts, appelez super(), puis ajoutez le script du widget. | Compilez et servez le site, puis vérifiez que la recherche et la navigation de Material fonctionnent toujours. |
| MkDocs standard | Utilisez theme.name: mkdocs avec un répertoire custom_theme distinct. Ajoutez la surcharge équivalente dans custom_theme/main.html au lieu de copier les modèles Material. | Exécutez mkdocs serve et vérifiez la recherche, les liens suivant et précédent, ainsi que le widget sur plusieurs pages. |
| Chargement asynchrone et doublons | Conservez un seul chargeur dans le bloc scripts hérité, attribuez-lui un ID stable et n'ajoutez pas le même extrait via extra_javascript ou un autre modèle partiel. | Après les chargements complets et les transitions instantanées de Material, vérifiez que document.querySelectorAll("#chattybox-widget").length vaut 1. |
| Politique de sécurité du contenu | Autorisez chattybox.ai dans script-src, l'origine de l'API configurée dans connect-src, fonts.googleapis.com dans style-src et fonts.gstatic.com dans font-src. Le widget actuel injectant son propre CSS de composant, un style-src strict nécessite également 'unsafe-inline' jusqu'à ce qu'une gestion par nonce ou une feuille de styles externe soit disponible. | Recherchez dans la console du navigateur et le panneau Network les requêtes de script, de style, de police, fetch ou WebSocket bloquées. |
| Recherche, navigation instantanée et mobile | Conservez les scripts du thème avec super() et veillez à ce que le lanceur ne chevauche ni la boîte de dialogue de recherche, ni le tiroir, ni la pagination, ni les contrôles de consentement. | Testez la recherche au clavier, plusieurs liens instantanés et une fenêtre de 390 pixels, sans chevauchement ni défilement horizontal. |
| Versions mike | Choisissez délibérément les chemins stable, latest ou d'une version explicite. Relancez l'exploration après le déplacement d'un alias et excluez les versions non prises en charge lorsque des réponses provenant d'autres versions induiraient les utilisateurs en erreur. | Utilisez mike serve pour tester le changement de version et vérifier que les citations aboutissent dans la version prévue. |
| Dysfonctionnement du widget ou des citations | Vérifiez l'indentation YAML, le custom_dir actif, le nom du bloc hérité, la clé d'API, la CSP, le contenu du plan de site et la présence de la surcharge dans la version déployée. | Examinez le HTML généré et testez l'artefact de production au lieu de vous fier uniquement au rechargement en direct. |
Utilisez une question sur le thème assortie d'une règle de modèle vérifiable, puis ouvrez la citation et confirmez qu'elle correspond à la version sélectionnée par votre visiteur.
Pour Material for MkDocs, définissez theme.custom_dir sur overrides, étendez base.html dans overrides/main.html et appelez super() avant le script asynchrone du widget. MkDocs standard nécessite son propre répertoire de thème personnalisé et une surcharge main.html équivalente.
{% extends "base.html" %}
{% block scripts %}
{{ super() }}
<script
id="chattybox-widget"
src="https://chattybox.ai/widget.js"
async
data-api-key="YOUR_API_KEY"
data-api-url="https://adorable-woodpecker-629.convex.site/chat"
data-chattybox-widget="true"
></script>
{% endblock %}Consultez le workflow de chatbot de la documentation citée par la source qui s'applique à toutes les plateformes.
Répondez aux questions sur les points de terminaison, les paramètres et l'authentification des documents de référence Python et API.
Comparez le même flux de travail pour les sites de documentation Docusaurus.
Recherchez des guides de configuration pour Docusaurus, VitePress, Starlight, Nextra, Mintlify, ReadMe et d'autres plates-formes de documentation.
Oui. ChattyBox peut explorer des pages publiques MkDocs et Material for MkDocs et s’intégrer comme un widget web standard.
Non. Ajoutez l’extrait du widget à votre modèle de site ou à la surcharge de thème après avoir configuré le chatbot.
Oui, si les pages de docs versionnées sont publiques et incluses dans l’exploration ou le sitemap.
Oui. Les analytics de ChattyBox aident à révéler les questions auxquelles votre contenu MkDocs ne répond pas encore clairement.
Aucune carte de crédit requise. Votre contenu n’est pas utilisé pour l’entraînement de modèles.
Niveau Free. Aucune carte requise.