Questions fréquentes.
Les réponses courtes, avec les liens vers les longues. Si la vôtre manque, l’index de la doc recense tous les guides.
Les réponses courtes, avec les liens vers les longues. Si la vôtre manque, l’index de la doc recense tous les guides.
ApiGlow est sous licence MIT, entièrement open source. Il n’y a pas d’offre payante, pas de version cloud et pas de compte — pas de business model du tout.
Non. Les requêtes partent directement du navigateur du lecteur vers votre API. Il n’y a pas d’analytics, pas de télémétrie et pas de serveur chez nous, donc nulle part où envoyer quoi que ce soit. Historique, environnements et scénarios restent dans le stockage du navigateur du lecteur.
OpenAPI 3.0.x, 3.1.x et 3.2.x nativement. Swagger 2.0 est converti au chargement, OpenAPI Overlay 1.1 s’applique au chargement, et les workflows Arazzo s’importent (1.0 et 1.1) comme s’exportent (1.1.0).
CORS : votre API doit autoriser l’origine de la documentation. ApiGlow diagnostique l’échec dans l’interface et sait passer par un proxy que vous hébergez (tryIt.proxyUrl) ; il n’en fournit aucun. Voir Console d’essai & CORS.
Nom du produit, logo et thèmes, oui. Depuis la v0.2.0 il n’y a plus de barre de crédit en bas de page ; la boîte « À propos » reste, atteignable depuis le menu des préférences dans l’en-tête : une installation CDN n’embarque aucun fichier LICENSE, et c’est là que vivent les mentions des composants open source embarqués. Voir le guide des thèmes.
Seulement si vous le voulez bien. npm install apiglow vous donne tout le dossier dist/ : copiez-le dans vos fichiers statiques et pointez la balise script sur votre propre origine. Plus rien n’en sort à l’exécution, aucun tiers n’entre dans votre CSP, et la version est figée dans votre lockfile. Gardez app.js à côté de son app.css, d’audit.js, de read-document.js, d’i18n/ et de fonts/ : il les résout relativement à lui-même, ce qui explique aussi qu’il ne passe pas par un bundler JavaScript. Voir l’installation.
app.js pèse ~295 Ko gzippé en v0.3.0, plus ~41 Ko de CSS. Le reste ne se charge qu’au besoin : le pack d’interface français (~51 Ko gzippé) si le français est actif, l’audit du schéma (~81 Ko) quand quelqu’un ouvre #/audit, et un lecteur tolérant (~35 Ko) pour un schéma qui contient une erreur de syntaxe. Ce n’est pas léger, et c’est le produit entier : six dépendances runtime, zéro framework, et dans ce seul fichier un runner Arazzo, un convertisseur Swagger 2.0, 35 thèmes et des extraits de code en dix langages.
Oui, et c’est la moitié de son intérêt. npx apiglow audit openapi.yaml applique les mêmes 137 règles que la page et fait échouer le build sur ce qu’il trouve : un constat d’une sévérité donnée, une note ou un score sous votre seuil. Une baseline versionnée permet à une API existante de n’échouer que sur les nouveaux constats, et les rapports vont là où regardent les relecteurs — SARIF pour le code scanning de GitHub, annotations sur la pull request, GitLab Code Quality, JSON pour les scripts et les agents. Sur GitHub, apiglow/audit-action fait tout en une étape. Voir l’audit en CI.
Le plancher déclaré est Chrome/Edge 111, Firefox 128 et Safari/iOS 16.4 — des fonctionnalités de plateforme classées Baseline « widely available ». Il n’y a aucun polyfill : au-dessus du plancher, tout est détecté et dégradé. La suite de bout en bout tourne sur Chromium, Firefox et WebKit, desktop et mobile émulé ; Chromium verrouille chaque changement et les autres moteurs tournent à la demande.
Les budgets de performance sont imposés en CI contre un schéma de 12 Mo et 1220 opérations, l’API REST GitHub gelée. Utilisable en moins d’une seconde, aucune tâche ne bloque la page plus de 500 ms, une réponse Cmd+K en moins de 200 ms, corps de schéma profonds et pages de prose en moins de 400 ms. Les plafonds ne peuvent que baisser ; l’outillage refuse une hausse. Les deux chiffres affichés sur l’accueil sont des mesures prises sur ce même schéma, pas des plafonds : environ 1,1 s avant d’être utilisable, et 61 ms pour dix-sept frappes dans la palette, sur une machine volontairement ralentie à quatre fois moins vite que le poste qui les a prises. La démo accompagne le Petstore d’une seconde spec de 1,15 Mo et 143 opérations — assez grande pour s’y promener, sans infliger 12 Mo de téléchargement à un visiteur.
ApiGlow vise WCAG 2.2 AA sur les parcours interactifs — navigation, console d’essai, recherche — avec un passage axe qui verrouille la CI, contraste des couleurs compris, plus un parcours clavier page entière et une suite de reflow à 320 px. Le balayage tourne sur les deux thèmes de l’app et impose le plancher AA comme n’importe quelle autre règle. Deux limites que le projet énonce lui-même : la promesse de contraste couvre les thèmes qu’il écrit, donc un ratio corrigé sur sa propre palette ne dit rien des 35 thèmes daisyUI standard qu’il embarque aussi ni d’un des vôtres, et aucune passe complète au lecteur d’écran n’a encore été faite.
D’office, chaque route s’annonce avec un titre par route, une meta description et du JSON-LD. Pour les crawlers qui n’exécutent pas de JavaScript, apiglow bake écrit un miroir statique HTML et Markdown de chaque opération, guide et scénario, plus un sitemap et un llms.txt servi — une commande côté auteur, l’installation du lecteur inchangée. Et seo: { index: false } garde une doc interne hors de l’index. Voir SEO & CLI bake.
Non. L’app est un module ES et télécharge ses ressources, deux choses que le navigateur bloque en file://. N’importe quel serveur statique HTTP(S) convient, y compris en une ligne (python3 -m http.server). Voir l’installation.
Oui — "x-apiglow-hide": true dans le schéma, ou des motifs openapi.hide dans la config. Les opérations cachées disparaissent de la nav, de la recherche et des exports. C’est du masquage documentaire, pas de la sécurité : le navigateur télécharge toujours le schéma complet. Voir Contrôle du schéma.