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.
Vous évaluez ChattyBox pour une organisation ? Contactez le support pour discuter de l'essai d'un forfait supérieur.
ChattyBox explore votre site existant, votre documentation, votre centre d'aide, votre CMS ou votre base de connaissances, puis intègre un chatbot qui répond à partir de votre propre contenu publié plutôt qu'à partir de la mémoire générique d'un 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é.
Utilisez ces points de contrôle pour décider si ChattyBox doit s'asseoir à côté de votre plate-forme de documents, remplacer un assistant distinct ou rester isolé pour les tests.
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 |
|---|---|---|
Point d'attention pour MkDocs Surcharge de Material | Décision d'implémentation 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. | Vérification Compilez et servez le site, puis vérifiez que la recherche et la navigation de Material fonctionnent toujours. |
Point d'attention pour MkDocs MkDocs standard | Décision d'implémentation 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. | Vérification Exécutez mkdocs serve et vérifiez la recherche, les liens suivant et précédent, ainsi que le widget sur plusieurs pages. |
Point d'attention pour MkDocs Chargement asynchrone et doublons | Décision d'implémentation 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. | Vérification Après les chargements complets et les transitions instantanées de Material, vérifiez que document.querySelectorAll("#chattybox-widget").length vaut 1. |
Point d'attention pour MkDocs Politique de sécurité du contenu | Décision d'implémentation 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. | Vérification Recherchez dans la console du navigateur et le panneau Network les requêtes de script, de style, de police, fetch ou WebSocket bloquées. |
Point d'attention pour MkDocs Recherche, navigation instantanée et mobile | Décision d'implémentation 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. | Vérification Testez la recherche au clavier, plusieurs liens instantanés et une fenêtre de 390 pixels, sans chevauchement ni défilement horizontal. |
Point d'attention pour MkDocs Versions mike | Décision d'implémentation 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. | Vérification Utilisez mike serve pour tester le changement de version et vérifier que les citations aboutissent dans la version prévue. |
Point d'attention pour MkDocs Dysfonctionnement du widget ou des citations | Décision d'implémentation 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. | Vérification 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 %}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.
Vous évaluez ChattyBox pour une organisation ? Contactez le support pour discuter de l'essai d'un forfait supérieur.
We use optional analytics and tag-management tools to understand site use. Choose whether to allow Ahrefs Web Analytics, PostHog, and Google Tag Manager. Turning analytics off reloads this page so the change takes effect cleanly. Essential site functionality and error monitoring are not controlled by this choice. Read our privacy policy.