Un SDK d’éditeur de cartes ajoute la création ou la modification de cartes au sein d’un produit SaaS sans obliger les utilisateurs à passer par un outil de conception distinct. L’application hôte conserve la gestion des identités, des autorisations, des projets, de la facturation, de la propriété des données et de la politique de publication, tandis que le SDK fournit le canevas et les outils dans la page. Kaleidr Editor monte sa propre carte MapLibre, s’authentifie avec une clé publiable limitée aux origines autorisées et conserve les modifications en mémoire jusqu’à ce que l’hôte définisse la persistance.
Les sections suivantes présentent les frontières du produit, l’architecture, le montage, la persistance, la sécurité, l’expérience utilisateur et les erreurs courantes. Pour rattacher une conversation à un moteur de rendu actif, consultez Comment ajouter un chat IA à une carte. Pour la catégorie plus générale des SDK, consultez Qu’est-ce qu’un SDK de cartographie IA ?.
Principes essentiels d’un SDK d’éditeur de cartes
- Surface et produit : l’éditeur gère le canevas d’édition ; l’hôte gère les utilisateurs, les projets, les autorisations, la persistance et la mise en production.
- En mémoire par défaut : Kaleidr Editor autonome ne conserve pas les modifications. Prévoyez l’enregistrement et la publication avant le lancement.
- Clé publiable +
design: utilisez une clé de navigateur limitée aux origines autorisées avec le scopedesign; n’exposez jamais une clé serveur.- Monter une fois, détruire une fois : liez le cycle de vie aux routes de la SPA et aux changements de tenant.
- Droits de publication distincts : modifier un brouillon n’exige pas la même autorisation que publier une carte accessible au public.

Comment ajouter un SDK d’éditeur de cartes à un produit SaaS ?
Ce guide place un espace de création cartographique dans un workflow SaaS existant. Un utilisateur peut ainsi ouvrir un projet, travailler sur un canevas MapLibre, choisir un style de fond de carte, utiliser les outils disponibles sur la carte et quitter la page sans laisser fuiter l’état du SDK. Dès qu’une intégration de persistance existe, l’enregistrement, la publication et le transfert restent sous le contrôle de l’hôte. Les exemples utilisent Kaleidr Editor, car sa documentation décrit un produit Editor intégré à la page grâce au chargeur partagé. Le même modèle de responsabilité s’applique à l’évaluation de tout SDK tiers d’édition cartographique.
Quelle différence entre un SDK d’éditeur de cartes, Studio, Viewer et un SIG ?
Un SDK d’éditeur de cartes est un composant réutilisable qui ajoute à une autre application des outils de création : navigation, sélection, dessin, style et commandes associées. Il ne doit pas remplacer le système de comptes, la base de données, les droits, le journal d’audit ou le workflow de projets de l’hôte. Une séparation fiable consiste à confier la surface d’édition à l’éditeur et à laisser au produit hôte l’utilisateur, le projet, les autorisations, la persistance et la décision de publication.
| Type de produit | Objectif principal | Usage idéal |
|---|---|---|
| SDK d’éditeur de cartes | Créer ou modifier dans le produit | Workflows SaaS qui doivent garder l’utilisateur dans l’application |
| Outil de création cartographique autonome | Application de création dédiée | Équipes pouvant quitter le produit hôte |
| Viewer de carte publiée | Diffusion en lecture seule | Consultation des cartes par des clients ou le public |
| Moteur de rendu cartographique | API de caméra et de couches | Produits cartographiques entièrement personnalisés |
| SIG | Opérations spatiales de référence | Analyse et gouvernance gérées par l’organisation |

Kaleidr Studio est le produit de création complet centré sur les prompts et structuré autour de Prompt → Process → Refine → Deploy. Kaleidr Editor est la surface d’édition intégrable. Kaleidr Viewer affiche une carte publiée. Ces parcours partagent des concepts de rendu et de style, mais ne constituent pas des surfaces produit interchangeables.
Comment l’architecture SaaS doit-elle gérer l’état de l’éditeur ?
Un workflow de production pour l’édition cartographique exige des responsabilités claires entre l’interface hôte, l’éditeur, les identifiants, les politiques du backend, les systèmes de données et la diffusion. Le SaaS hôte gère l’identité, le tenant, la navigation, les projets, la facturation, les autorisations et le workflow. Kaleidr Editor gère la surface d’édition dans la page, sa carte MapLibre, son cycle de vie et les outils côté client disponibles. Une clé publiable donne au navigateur accès au produit Editor et à la capacité design. Le backend de l’hôte gère l’autorisation, la persistance, les versions, l’audit, les importations, les exportations et la politique de publication. Les systèmes de données de référence gèrent les jeux de données et les règles métier. Un viewer ou une autre destination diffuse les résultats approuvés en lecture seule.

Le backend hôte ne doit jamais faire confiance à un identifiant de projet, de tenant ou de jeu de données, ni à une cible de publication fournis par le navigateur, sans procéder à une nouvelle autorisation. Le montage de l’éditeur rend la création cartographique naturelle, mais le navigateur reste un environnement non fiable. La documentation publique précise que product: "editor" sélectionne le bundle Editor, que le point d’entrée par défaut est attach/in-process plutôt qu’iframe, que styleId accepte l’identifiant d’un fond de carte du catalogue ou une URL de style complète, que kaleidr-morning est le fond de carte par défaut et que le handle fournit toujours destroy(), tandis que les mises à jour de caméra et de thème sont disponibles lorsqu’elles sont prises en charge. L’intégration autonome ne conserve pas les modifications et n’inclut pas les interfaces Studio complètes pilotées par l’IA, Control Tower ni une bibliothèque autonome de ressources 3D sans configuration supplémentaire du backend.
Comment monter Kaleidr Editor en toute sécurité ?
Vérifiez l’accès Pro ou Enterprise pour les clés API et les intégrations, une clé publiable autorisée pour Editor avec le scope design, les origines exactes autorisées en développement, préproduction et production, un élément cible doté d’une hauteur explicite, un style initial, un modèle de projets et d’autorisations côté hôte, une stratégie de persistance et le démontage de la SPA. Chargez une seule fois le chargeur versionné depuis https://cdn.kaleidr.com/embed/v1/kaleidr.js. Le chargeur est inactif par défaut : activez les intégrations avant son chargement ou transmettez l’option enabled à chaque montage. Voici un montage minimal :
const editor = Kaleidr.mount("#editor", {
product: "editor",
publishableKey: "kld_pk_live_REPLACE_ME",
styleId: "kaleidr-morning",
enabled: true
});
window.addEventListener("pagehide", () => {
editor.destroy();
});
Remplacez la clé fictive par une véritable clé publiable, réservez une hauteur suffisante pour les outils d’édition et annoncez l’état de chargement ou d’échec hors de la carte. L’exemple suit la référence d’attachement d’Editor, le guide d’intégration d’Editor et la référence du chargeur kaleidr.js actuels. Il monte l’éditeur, mais n’enregistre pas la spécification en mémoire, car la référence publique du handle ne documente aucune méthode de persistance. L’élément <kaleidr-map> peut sélectionner product="editor" avec publishable-key et style-id lorsque le balisage déclaratif suffit. Préférez l’API impérative lorsque l’hôte a besoin d’un handle explicite ou d’un cycle de vie géré par le framework. Dans React ou une autre SPA, montez une seule fois dans un effet et appelez destroy() lors du nettoyage ; ne remontez pas l’éditeur à chaque modification d’un champ de formulaire.
Comment planifier la persistance, la sécurité et l’UX ?
L’intégration autonome conserve les modifications en mémoire. Les équipes choisissent généralement l’un de ces trois parcours : utiliser Editor comme surface temporaire pour des prototypes ; conserver la création complète dans Kaleidr Studio lorsque les utilisateurs peuvent quitter l’interface SaaS ; ou construire un workflow intégré à l’hôte comprenant le chargement du projet, la validation, l’enregistrement du brouillon, le versionnement, la gestion des conflits, l’approbation, la publication, le retour arrière et l’audit. La référence publique du SDK Editor ne documente pas de méthodes que l’on pourrait inventer, comme des fonctions d’enregistrement ou des écouteurs de modification non documentés. Confirmez donc avec Kaleidr le mécanisme de transfert d’état pris en charge avant de promettre l’enregistrement aux clients. Les routes design de la plateforme, comme l’analyse de jeux de données, l’application partielle d’une spécification de carte et les catalogues de styles ou de thèmes, doivent rester dans le backend de l’hôte derrière une clé serveur. Editor dans le navigateur continue d’utiliser la clé publiable par l’intermédiaire du SDK.

Limitez les clés publiables aux origines exactes, imposez HTTPS hors du développement local, restreignez les clés à design et aux seuls produits nécessaires, puis détruisez l’éditeur lors d’un changement de compte ou de tenant. Dans le backend, autorisez chaque projet et jeu de données selon l’utilisateur et le tenant, vérifiez la propriété indépendamment de l’état du navigateur, validez les spécifications cartographiques avant leur persistance ou publication et séparez les droits de brouillon, de révision et de publication. L’OWASP API Security Top 10 considère les défauts d’autorisation au niveau des objets comme un risque majeur : un identifiant de projet fourni par le navigateur ne constitue jamais une autorisation suffisante. Gardez l’interface du produit visible afin que les utilisateurs sachent quel projet ils modifient, placez les commandes d’enregistrement et de publication dans l’interface de l’hôte plutôt que de fabriquer un faux état « Enregistré » à partir de modifications uniquement en mémoire, et réservez davantage d’espace vertical que pour un viewer. Donnez à la zone d’édition un nom accessible, préservez l’accès au clavier aux actions voisines, évitez les pièges de focus, annoncez l’état d’enregistrement et les erreurs et proposez si possible des alternatives au glisser-déposer conformément aux WCAG 2.2.
| Erreur | Conséquence | Correction recommandée |
|---|---|---|
| Supposer qu’Editor autonome conserve le travail | Les utilisateurs perdent leurs modifications à la fin de la session | Concevoir explicitement la persistance et confirmer le point d’intégration |
| Inventer des méthodes de handle non documentées | La production dépend d’API inexistantes | Utiliser uniquement les méthodes documentées |
| Exposer une clé serveur dans le navigateur | Un bearer du backend devient public | Utiliser une clé publiable limitée aux origines autorisées |
| Monter sans activer le SDK | Le chargeur reste inactif | Activer les intégrations ou transmettre enabled: true |
| Omettre la hauteur du conteneur | L’éditeur s’effondre ou devient inutilisable | Réserver une hauteur responsive suffisante |
| Considérer Editor et Studio comme identiques | Les attentes dépassent l’intégration autonome | Séparer l’édition intégrée de la création complète dans Studio |
| Faire confiance aux identifiants de tenant du navigateur | Un accès entre tenants devient possible | Réautoriser chaque projet dans le backend |
| Ignorer le démontage dans une SPA | Les éditeurs et écouteurs en double s’accumulent | Conserver le handle et appeler destroy() |
Verdict final
Un SDK d’éditeur de cartes peut intégrer la création cartographique à un produit SaaS sans reconstruire entièrement un canevas d’édition, l’intégration au moteur de rendu et le modèle d’authentification du navigateur. Kaleidr Editor fournit actuellement une surface MapLibre intégrable dans la page, authentifiée par une clé publiable avec le scope design. Comme l’intégration autonome conserve les modifications en mémoire, monter l’éditeur ne revient pas à livrer un système de création persistant complet. Choisissez Editor SDK lorsque le produit requiert une surface d’édition intégrée et que l’équipe hôte prendra en charge les projets, les autorisations, la persistance, la publication et l’auditabilité. Choisissez Kaleidr Studio lorsqu’un workflow de création complet et séparé est acceptable. Confirmez le transfert d’état et les éventuels points d’intégration assistés par IA avant de promettre l’enregistrement aux clients.
Ajoutez l’édition cartographique à votre produit SaaS
Montez Kaleidr Editor avec le chargeur JavaScript versionné, une clé publiable limitée aux origines autorisées et le scope design. Consultez le guide d’intégration d’Editor pour les options d’attachement et le cycle de vie. Pour l’authentification, les endpoints de conception et les workflows intégrés à l’hôte, consultez la documentation développeur et les exigences Enterprise.
Questions fréquentes
Qu’est-ce qu’un SDK d’éditeur de cartes ?
Un SDK d’éditeur de cartes est un composant réutilisable qui ajoute à une autre application des outils de création ou de modification de cartes. Le produit hôte conserve généralement les utilisateurs, les projets, les autorisations, la persistance et la publication.
Peut-on intégrer Kaleidr Editor à un produit SaaS ?
Oui. Le SDK actuel documente product: "editor" pour le montage dans un élément cible. Editor crée sa propre carte MapLibre dans la page.
Editor autonome enregistre-t-il les cartes des utilisateurs ?
Non. La documentation publique indique que les modifications vivent dans une spécification en mémoire et que l’intégration autonome ne les conserve pas. Planifiez la persistance côté hôte avant le lancement.
Quel identifiant Editor utilise-t-il ?
Utilisez via le SDK une clé de navigateur publiable avec le scope design, limitée aux origines approuvées. Ne placez jamais une clé serveur dans le code du navigateur.
Kaleidr Editor est-il identique à Kaleidr Studio ?
Non. Studio est le produit complet de création et de publication centré sur les prompts. Editor est la surface d’édition intégrable destinée à une autre application.
References
- Kaleidr. Attach the Map Editor. Kaleidr Developer Docs. Accessed 3 August 2026. https://docs.kaleidr.com/guides/attach-the-editor
- Kaleidr. Auth & Scopes. Kaleidr Developer Docs. Accessed 3 August 2026. https://docs.kaleidr.com/platform-api/auth-and-scopes
- Kaleidr. CORS & Allowed Origins. Kaleidr Developer Docs. Accessed 3 August 2026. https://docs.kaleidr.com/platform-api/cors-and-allowed-origins
- Kaleidr. Editor — Mount the Map Editor. Kaleidr Developer Docs. Accessed 3 August 2026. https://docs.kaleidr.com/sdk/editor-attach
- Kaleidr. Endpoints. Kaleidr Developer Docs. Accessed 3 August 2026. https://docs.kaleidr.com/platform-api/endpoints
- Kaleidr. kaleidr.js — the Loader. Kaleidr Developer Docs. Accessed 3 August 2026. https://docs.kaleidr.com/sdk/kaleidr-js
- Kaleidr. Pricing & Plans. kaleidr.com. Accessed 3 August 2026. https://kaleidr.com/pricing
- MapLibre. Map — MapLibre GL JS. Accessed 3 August 2026. https://maplibre.org/maplibre-gl-js/docs/API/classes/Map/
- OWASP. OWASP Top 10 API Security Risks — 2023. Accessed 3 August 2026. https://owasp.org/API-Security/editions/2023/en/0x11-t10/
- World Wide Web Consortium. Web Content Accessibility Guidelines (WCAG) 2.2. Accessed 3 August 2026. https://www.w3.org/TR/WCAG22/
@misc{kaleidr_editor_attach,
title = {Editor -- Mount the Map Editor},
author = {{Kaleidr}},
note = {Kaleidr Developer Docs; accessed 3 August 2026},
url = {https://docs.kaleidr.com/sdk/editor-attach}
}
@misc{kaleidr_editor_guide,
title = {Attach the Map Editor},
author = {{Kaleidr}},
note = {Kaleidr Developer Docs; accessed 3 August 2026},
url = {https://docs.kaleidr.com/guides/attach-the-editor}
}
@misc{kaleidr_loader,
title = {kaleidr.js -- the Loader},
author = {{Kaleidr}},
note = {Kaleidr Developer Docs; accessed 3 August 2026},
url = {https://docs.kaleidr.com/sdk/kaleidr-js}
}
@misc{kaleidr_auth_scopes,
title = {Auth and Scopes},
author = {{Kaleidr}},
note = {Kaleidr Developer Docs; accessed 3 August 2026},
url = {https://docs.kaleidr.com/platform-api/auth-and-scopes}
}
@misc{owasp_api_security,
title = {OWASP Top 10 API Security Risks -- 2023},
author = {{OWASP}},
note = {Accessed 3 August 2026},
url = {https://owasp.org/API-Security/editions/2023/en/0x11-t10/}
}
@misc{wcag22,
title = {Web Content Accessibility Guidelines 2.2},
author = {{World Wide Web Consortium}},
note = {Accessed 3 August 2026},
url = {https://www.w3.org/TR/WCAG22/}
}