Les clés de traduction sur les plateformes Cap collectif

Le développement de Cap Collectif, qui compte près de 200 clients, nous amène aujourd’hui à travailler à l’international et donc à rendre notre tech accessible dans différentes langues. L’un des problèmes majeurs que cette transition implique est la gestion des clés de traduction : les clés utilisées jusqu’alors dans une même langue n’impliquent aucun coût supplémentaire en cas de redondance de l’information traduite. En revanche, traduire une plateforme requiert souvent des prestations extérieures chiffrées sur la base du nombre de mots à traduire, auquel cas traiter la redondance des clés de traduction devient un réel enjeu budgétaire.

Par exemple, à Cap Collectif, nous avons décidé de nous pencher sur ces fameuses clés de traduction en constatant que nous étions censés traduire 22 462 mots, un chiffre bien plus élevé que ce que nous pensions… Un rapide état des lieux confirme notre intuition : 34 clés de traduction avec pour valeur “Annuler”, 42 clés avec pour valeur “Confirmer”… Un travail de nettoyage s’impose !

Cependant, plus votre plateforme est conséquente, plus le besoin de repasser sur les clés de traduction est fort, plus cette tâche peut paraître insurmontable (en plus de ne pas être très attractive). 

Rassurez vous, vous n’aurez pas besoin de maltraiter un jeune stagiaire en lui assignant cette tâche (et vous n’auriez pas dû ne serait-ce qu’y penser bien entendu 😉 ). Nous allons voir au cours de cet article comment Cap Collectif a décidé de résoudre ce problème en automatisant l’analyse des clés de traduction et en prévenant l’ajout de nouvelles clés de traduction aux valeurs existantes.

Nettoyer votre plateforme des doublons

Extraction des clés de traduction

extraire des clés de traduction

Un doublon est caractérisé par deux clés de traduction ou plus ayant une même valeur. Afin de conserver une modularité des traductions de la plateforme, il peut être parfois utile de dupliquer les clés ayant un même valeur. Aussi, il nous faut autoriser un nombre maximum de références différentes pointant vers une même valeur. Toutefois, des clés de traduction telles que “Annuler” ou “Confirmer” n’ont aucun intérêt à être dupliquées et ne feront qu’ alourdir votre devis final. 

Dans le but de repérer de façon programmable ces doublons, il vous faudra dans un premier temps récupérer vos traductions en local si ce n’est pas déjà le cas afin de limiter le nombre d’appels réseaux réalisés. 

Une fois ceci accompli, votre programme devra lire ligne par ligne les clés de traduction existantes et leurs valeurs associées dans le fichier correspondant à la langue par défaut (supposé comme le plus complet pour des raisons de simplicité et de performance). Cette étape requiert un moyen de récupérer la donnée intéressante dans la ligne, c’est pourquoi nous avons décidé d’utiliser des Regex.

Regex utilisée pour récupérer la clé de traduction et sa valeur associée. La simplicité des regex s’explique par le formatage des fichiers de traduction.

A ce niveau de notre script, nous n’avons  trouvé que le  moyen d’extraire les clés de traduction du fichier dans des variables. Cette étape va alors nous servir à stocker les clés de traduction dans une structure qui permettra de mettre en avant les répétitions d’information. Nous avons donc choisi d’exploiter la structure particulière des Map (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) en Javascript. Nous stockerons ainsi la valeur de traduction en tant que clé dans cette Map, tandis que la valeur de cette entrée sera les clés de traduction faisant référence à cette valeur (inversion clé/valeur pour bien mettre en évidence que nous mettons en avant à présent la valeur des traductions comme élément de référence).

Classification des clés de traduction

Comme vu dans la section précédente, nous allons stocker dans une Map les valeurs de traduction et les clés qui y sont associées. L’objectif final étant de nous débarrasser des doublons, il nous faut penser à stocker des informations concernant la position de ces clés de traduction dans le code de la plateforme. Vous pouvez à ce niveau récupérer l’ensemble des informations qui vous permettront de retrouver rapidement la position des clés de traduction en cas de réécriture du fichier (comme le nom du fichier par exemple).

Traitement des clés de traduction

Une fois votre Map entièrement remplie, vous pouvez demander à votre programme de réécrire automatiquement les fichiers avec la première clé de traduction…

J’ai choisi personnellement d’attendre l’analyse complète des clés de traduction avant de décider de réécrire les fichiers. Cette solution a pour avantage d’éviter une multitude de réécriture sur un fichier si une clé de traduction est fréquemment répliquée. En revanche, le temps d’attente est plus élevé que si vous décidez d’attendre simplement qu’un seuil de nombre de réplications pour une clé donnée soit dépassé.

… ou de choisir une clé parmis les clés existantes …

… et/ou de demander à l’utilisateur d’entrer une nouvelle clé qu’il aimerait utiliser.

Réécriture manuelle de l’ensemble des clés de traduction à partir de la clé de traduction entrée par l’utilisateur

La solution retenue dépendra de votre projet et de son état actuel. Je vous recommande malgré tout une première passe sur votre code de façon automatisée devant la quantité de modifications qui pourrait être nécessaire. La réécriture en elle-même se base également sur les RegEx et reste sensiblement proche de la détection des clés de traduction. Pensez toutefois à ce niveau à enregistrer l’ensemble de vos ajouts/modifications/suppressions de clés de traduction dans des fichiers avant d’avoir un historique des manipulations effectuées pour pouvoir rétablir la situation en cas de conflits ou erreur du programme (back-ups).

Analyse des résultats

Vous avez supprimé les doublons et les clés de traduction inutilisées de votre projet et vous vous félicitez d’être passé de 22 462 à 10 044 mots grâce à votre programme. Cependant, un petit tour sur votre plateforme vous donne froid dans le dos : de nombreuses clés de traduction ne sont plus traduites. Vous gardez votre sang froid et décidez d’analyser les clés de traduction manquantes. Rapidement, vous vous rendez compte que ces clés de traduction sont générées “à la volée”: concaténation de chaînes de caractères, traduction d’une variable… Votre programme ne peut décemment pas détecter ce type de cas. 

Heureusement, nous pouvons maintenant utiliser les back-ups de l’étape précédente pour restaurer les clés de traduction manquantes. Cette tâche est la plus chronophage de toutes car elle nécessite que votre équipe de testeurs vous remonte l’ensemble des clés manquantes. Si vous ne disposez pas d’une équipe suffisamment importante, vous pouvez décider de ne pas supprimer les clés de traduction, mais simplement de vous occuper des doublons afin de limiter fortement les risques. C’est ainsi, qu’après rétablissement des “faux-positifs”, nous atteignons finalement 15 851 mots. Ce résultat, beaucoup moins impressionnant que le précédent représente toutefois une réduction de 30% des mots de plateforme.

Prendre des bonnes habitudes

Après avoir réalisé la prise de risque que représente la modification/suppression des clés de traduction, vous voulez sûrement éviter d’avoir à réitérer l’opération fréquemment. Alors que le script précédemment écrit peut servir à réaliser une analyse de la plateforme (que vous pouvez inclure à votre CI en levant des exceptions lorsqu’un seuil de duplication est dépassé), son temps d’exécution ne lui permet pas de s’inscrire dans un usage quotidien. Deux axes d’améliorations sont possibles pour contrôler l’évolution des clés de traduction de votre plateforme.

Prévenir l’ajout de nouveaux doublons

Vous pouvez alors compléter l’utilité du script précédemment écrit avec un Git hook (https://githooks.com/). Ce pre-commit hook aurait pour but d’analyser les clés de traduction présentes dans les fichiers ajoutés par un développeur. Une clé de traduction est repérée différemment selon l’outil de traduction utilisé (dépendant souvent du type de fichiers).

Regex de détection d’ajout de clé de traduction dans un fichier JS ou PHP

En cas de nouvelle clé-doublon, il vous suffira de lancer une erreur. Celle-ci se caractérise par l’absence de cette clé en dehors des fichiers modifiés.

Insister sur les bonnes pratiques lors des revues de code

Il convient bien entendu de pousser également les développeurs à utiliser des “bonnes pratiques” pour les clés de traduction comme l’interdiction d’utiliser des variables en tant que clé de traduction ou alors, le cas échéant, passer cette variable à une fonction énumérant les clés de traduction possibles. De cette façon, les clés seront inscrites dans un fichier et deviendront détectables par votre script.

Conclusion

La gestion des clés de traduction se révèle être un véritable défi, plus encore lorsque le contrôle de celles-ci est réalisé tardivement. De simples mesures comme un pre commit Hook permet de prévenir la réplication des clés de traduction de façon pérenne et d’économiser un devis parfois lourd. Maintenant que vous avez les outils en main, n’hésitez plus, faites comme Cap Collectif et prenez le contrôle de vos clés de traduction !

En ce début janvier, nous vous souhaitons une très bonne année 2020 ! Que tous vos projets se réalisent, encore plus s’ils utilisent notre API 😉 

Nous en profitons pour vous remercier de l’intérêt que vous portez à notre API : nous recevons en effet de nombreux messages à l’adresse [email protected] et sommes très heureux de pouvoir échanger avec vous. Il est important pour nous de clarifier au maximum sa documentation et ses différents guides d’utilisation pour que vous puissiez facilement et efficacement l’utiliser. Vos remarques et suggestions contribuent ainsi grandement à l’amélioration de l’API. 

On commence fort cette nouvelle année avec l’arrivée de nouvelles données disponibles sur l’API publique telles que les données concernant les projets et leurs étapes ainsi que les consultations et l’ensemble de leurs contributions. Cela signifie que vous avez maintenant accès à la totalité des contributions sur la plateforme.

Et ce n’est pas terminé car il est maintenant possible grâce à l’API de créer, modifier et supprimer des événements à l’aide d’un token d’administrateur ! Pour ce faire, vous aurez besoin d’être authentifié sur l’API, comme expliqué ici : https://demo-api.cap-collectif.com/developer

Vous pouvez retrouver l’ensemble des champs disponibles et les interactions possibles à l’adresse : https://demo-api.cap-collectif.com/developer/mutation

Nous avons sincèrement hâte de voir comment ces nouvelles données vont pouvoir enrichir vos projets existants ou vous donner de nouvelles idées intéressantes.

Voici un petit exemple de requête pour récupérer les données d’un projet dont le nombre de contributeurs, de votes et de contributions ainsi que les informations des différentes étapes du projet (titre, l’url, l’état, les dates de début et de fin) : 

Vous pouvez retrouver cette requête ici dans l’explorer de l’API.

Et en bonus, voici un second exemple de requête pour récupérer tous les types de contributions sur une consultation, que ce soit les sources, les arguments, les propositions qui peuvent elles-mêmes être triées selon différents champs et même les versions : 

Vous pouvez retrouver cette requête ici dans l’explorer de l’API.

Ces données peuvent notamment servir au développement d’un fil d’actualités concernant une consultation en particulier, et ainsi voir au fil du temps l’évolution de la participation et la construction des décisions prises au cours de cette consultation.

Notre objectif à terme étant toujours d’enrichir l’API avec de nouvelles données disponibles, nous continuerons à vous communiquer régulièrement les dernières mises à jour de l’API pour que vous soyez les premiers au courant !

En vous souhaitant encore une fois une excellente année 2020 !

Nous sommes fiers d’annoncer les nouveautés préparées depuis plusieurs mois par notre équipe infrastructure ! L’intégralité de notre parc est désormais sur CloudFlare Entreprise, offrant ainsi le plus haut niveau de performance et de sécurité à tous nos clients. Nous rejoignons ainsi les utilisateurs francophones de CloudFlare tels que LeCab, Back Market ou encore Pages jaunes, cet article vous détaille tout ça.

Un site en HTTPS au niveau de sécurité le plus haut

Le protocole HTTPS (HyperText Transfer Protocol Secure) a été conçu pour pallier le problème de sécurité posé par HTTP, en lui ajoutant une couche sécurisée qui permet de chiffrer les données échangées. Un site protégé par un certificat SSL (Secure Socket Layer) affiche le fameux cadenas prouvant qu’il est sécurisé.

Nos plateformes disposent toutes d’un certificat SSL de niveau A+, délivré par CloudFlare à travers son réseau mondial, mettant ainsi HTTPS en ligne en quelques minutes, aussi près que possible des visiteurs. Ainsi nous assurons le transport sécurisé des données de tous nos utilisateurs et leur intégrité. De plus, le protocole HTTP/2 devient disponible pour des améliorations de vitesse encore plus importantes.

Les certificats délivrés à tous nos clients sont désormais valables un an (365 jours) et seront ensuite renouvelés automatiquement au moins 30 jours avant leur expiration.

Pour les clients qui préfèrent acquérir leur propre certificat SSL auprès d’une autorité de certification (CA), Cap Collectif peut également générer la demande de signature de certificat (CSR) requise avec le nom, l’emplacement, etc. de l’organisation du client (la clé privée associée sera générée par Cloudflare, évitant ainsi le risque d’une manipulation dangereuse).

Configurer rapidement votre URL personnalisée

Chaque client dispose à la création de son instance d’une URL telle que exemple.cap-collectif.com mais afin d’obtenir un meilleur classement SEO et une meilleure confiance des visiteurs, il convient d’utiliser plutôt un nom de domaine personnalisé comme participez.exemple.com.

Par le passé, la gestion des noms de domaines de nos clients demandait une procédure assez longue et complexe. Nous sommes ravis d’annoncer que la configuration est désormais la même pour tous, unique et très rapide : un seul enregistrement DNS !

participez.exemple.com CNAME proxy-fallback.cap-collectif.com.

Notre nouvelle configuration DNS via CNAME

 

Types de domaines personnalisés pris en charge Exemple
Sous-domaine www www.exemple.com
Sous-domaine personnalisé participez.exemple.com
Domaine racine exemple.com

Vous pouvez configurer un ou plusieurs types de domaines personnalisés pour votre site. Si vous utilisez un domaine racine comme domaine personnalisé, nous vous recommandons également de configurer un sous-domaine www. Nous créerons automatiquement des redirections entre les domaines.

Par exemple, si vous configurez www.exemple.com comme domaine personnalisé pour votre site et que des enregistrements ALIAS et CNAME sont configurés pour les domaines www et racine, alors exemple.com redirigera vers www.exemple.com.

Notre objectif est de vous permettre de configurer ou modifier votre URL personnalisée directement dans le Back Office, courant 2020.

La performance et la sécurité sont intégrées par défaut

Chez Cap Collectif, nous pensons que la sécurité et la performance ne doivent pas être une option.

C’est pourquoi nous sommes très fiers d’être en mesure de fournir à tous nos clients, sans exception et sans coût supplémentaire :

  • l’accélération des performances Web ;
  • la protection DDoS ;
  • notre pare feu applicatif configuré pour arrêter un large éventail d’attaques ;
  • la prévention de la perte de données ; 
  • l’atténuation des bots.

Nos clients savent qu’il peuvent compter sur une plateforme Cap Collectif toujours disponible, exempte de bots et de logiciels malveillants.

Enfin, CloudFlare entreprise permet d’optimiser la capture des journaux (logs) de chaque utilisateur. En cas d’urgence, comme un ordinateur portable d’administrateur volé, nos clients peuvent désormais auditer chaque URL demandée lors d’une session.


Le problème

Durant ces dernières années, nous avons vu fleurir de nombreuses consultations toutes plus passionnantes les unes que les autres. Cependant, à travers les retours de nos clients, nous avons identifié que plusieurs consultations relevaient parfois de la même thématique, du même projet, sur la même temporalité. 

Par exemple, Grenoble-Alpes Métropole a initié un projet de renouvellement urbain, impliquant l’organisation d’une consultation dans trois quartiers différents de la Métropole. On retrouve actuellement dans la liste des projets de la Métropole un projet par consultation (là où pourrait s’afficher le seul méta-projet de renouvellement urbain, au sein duquel retrouver les consultations par quartier qui lui sont liées) :

Cette pratique soulève deux problématiques majeures :

  • elle conduit nos clients à multiplier le nombre de consultations (laissant à penser qu’il s’agit de projets distincts alors qu’ils font partie d’un même méta-projet), ce qui réduit la lisibilité et la compréhension de certaines démarches. Cette problématique est particulièrement prégnante pour nos clients qui centralisent sur leur plateforme différentes démarches de participation.
  • elle ne permet pas d’avoir un compteur global des projets découpés. Il n’est donc pas possible d’afficher un nombre consolidé des participants, contributions et votes.

Notre solution

En nous efforçant de vous donner les meilleurs outils pour organiser vos projets, nous sommes heureux d’annoncer que vous pouvez désormais lancer plusieurs consultations dans une même étape de consultation. 

Reprenons l’exemple de la Métropole de Grenoble sur leur méta-projet de renouvellement urbain. Désormais, il sera possible de faire cohabiter plusieurs consultations (Renaudie-Champberton, Les Villeneuves et Mistral) au sein d’un même méta-projet :

Quoi de neuf ?

La possibilité de créer des méta-projets a nécessité plusieurs évolutions en back-office et le développement de nouvelles fonctionnalités. Voici les plus essentielles :

Clarifier certains éléments de l’interface d’administration

Lors de ce projet, nous avons décidé de redéfinir la terminologie de certains éléments afin d’apporter plus de cohérence et de clarté sur cette partie de l’administration. Par exemple, nous avons renommé le champ “Structure” en “Consultation(s)”  dans la page de configuration d’une étape de consultation. Dans la même optique, nous avons déplacé des options de l’étape de consultation vers la configuration d’une consultation.

Illustrer une consultation lorsqu’il y en a plusieurs dans une même étape

Dans la mesure où il est désormais possible d’avoir plusieurs consultations à l’intérieur d’une même étape de consultation, il est nécessaire de pouvoir les différencier, c’est pourquoi nous avons introduit la possibilité d’ajouter une illustration à une consultation.

Ajouter plusieurs consultations dans une étape de consultation

À partir de la page de configuration d’une étape de consultation, nous avons fait évoluer le champ de sélection d’une consultation en un champ à sélection multiples permettant d’ajouter autant de consultations qu’on le souhaite.

Sélectionner une étape de consultation dans la configuration d’une consultation

Afin d’équilibrer le système mis en place, nous avons décidé de permettre la liaison dans les 2 sens afin de favoriser une certaine marge de flexibilité.

Afficher plusieurs consultations dans une étape de consultation

Une fois le système mis en place, l’étape de consultation sur l’application a dû être adaptée pour rendre possible ce nouvel usage. Nous avons donc repris l’esprit de l’affichage de la liste des projets afin de l’appliquer au cas de consultations multiples.

Accéder à une page de consultation dans une étape avec plusieurs consultations

L’affichage d’une consultation a dû être légèrement modifiée dans la mesure où la notion de profondeur de page a été intégrée. Ainsi, nous avons introduit des éléments de navigation afin de permettre à l’utilisateur de revenir à la liste des consultations plus aisément. De plus, nous avons fait le choix de masquer l’en-tête du projet afin de permettre à l’utilisateur de se retrouver dans un espace essentiellement centré sur la consultation.

Comment y accéder ?

Prêt à ajouter plusieurs consultations dans une étape de consultation pour votre prochain projet ?

Si vous êtes client de la plateforme, rendez-vous dans l’administration → votre projet → étape de consultation !

Si vous n’êtes pas encore client, consultez nos tarifs ou contactez-nous pour commencer à planifier les consultations de votre prochain projet.

L’été a été studieux à Cap Collectif. Nous vous présentons en cette rentrée une nouvelle fonctionnalité, très attendue par nos clients : la possibilité de s’authentifier sur la plateforme de Cap Collectif avec le service FranceConnect.

Qu’est-ce que FranceConnect ?


FranceConnect est une plateforme numérique de l’état français qui vise à mettre en place un système d’authentification unique et d’échange d’informations de manière sécurisée pour tous les services publics.

L’objectif ? Simplifier la vie des usagers.

Concrètement, cette plateforme permet d’utiliser une identité numérique unique existante pour se connecter à différents services publics en ligne, par l’intermédiaire d’un bouton d’authentification spécifique intitulé « FranceConnect ».

Il ne s’agit pas de créer un nouveau compte, mais précisément de réutiliser un compte existant, référencé comme fiable par FranceConnect, car provenant d’un « fournisseur d’identité » national (les Finances publiques, via impots.gouv.fr, La Poste, Améli).

En février 2019, FranceConnect comptait 8 millions d’utilisateurs et vise un objectif de 20 millions de comptes d’ici la fin de l’année.

Pourquoi permettre une authentification FranceConnect ?


La fonctionnalité développée répond à plusieurs objectifs :

  • Faciliter le parcours d’authentification des utilisateurs

Une myriade d’identifiants et de mots de passe à retenir pour accéder à différents sites web, des données à saisir à chaque création de compte : voilà un cauchemar bien connu des internautes. 

FranceConnect permet de s’authentifier avec un compte existant sur d’autres sites (par exemple la plateforme de Cap Collectif, qui agit ici en tant que fournisseur de services) sans devoir recréer un compte, ou en en créant un de façon accélérée grâce à la récupération des données du compte FranceConnect. L’inscription et la connexion sont donc plus rapides pour l’utilisateur.

En plus, aucune crainte à avoir en termes de confidentialité : FranceConnect ne stocke pas les données personnelles. A chaque connexion, l’utilisateur est informé par un email. 

  • Garantir l’identité d’un participant

Pour être référencé comme fournisseur d’identité auprès de FranceConnect, il faut être en mesure de prouver que l’utilisateur qui se présente est bien celui qu’il prétend être. Cela suppose donc que l’identité de l’usager ait été vérifiée. En tant qu’organisateur d’une consultation, vous êtes donc assuré de l’identité des participants, sans avoir à en arriver à des extrémités désastreuses pour votre taux de participation (non, demander à un participant de scanner sa carte d’identité pour participer à un projet en ligne n’est pas une bonne idée). 

  • Garantir l’unicité des comptes utilisateurs : 

C’est la conséquence directe du point précédent. S’il n’est pas toujours justifié d’imposer la création d’un compte FranceConnect à l’inscription sur une plateforme participative, il peut en revanche être intéressant d’en faire une condition requise à la participation lors de la phase de vote d’un projet (ex : un budget participatif). De quoi couper l’envie à des petits malins de se créer des adresses mails jetables pour voter plusieurs fois pour leur projet… Cette fonctionnalité de condition requise sera elle aussi bientôt disponible sur la plateforme.

Comment ça fonctionne ?


Depuis l’interface d’administration, vous pouvez configurer une authentification FranceConnect  :

  • aller sur la page Authentification
  • sélectionner le bouton “Modifier” au niveau de FranceConnect 
  • configurer les champs – avec le soutien de votre collègue de la DSI 😉

Une fois la méthode d’authentification configurée, les visiteurs verront apparaître le bouton “FranceConnect” au moment de s’inscrire ou de se connecter, comme présenté dans la capture d’écran ci-dessous.

Comment y accéder ?


La fonctionnalité d’authentification avec FranceConnect est disponible dès maintenant et gratuitement pour tous nos clients. Retrouver tous les détails de cette fonctionnalité sur l’aide en ligne de Cap Collectif. Vous pouvez également vous renseigner sur FranceConnect via le site officiel.

Si vous n’êtes pas encore client, consultez nos tarifs ou contactez-nous.

Maxime Arrouard & Coline Vanneroy

Et si on parlait un peu plus de tech dans la CivicTech ? Chaque mois, l’équipe de Cap Collectif vous propose un nouveau rendez-vous éditorial. L’objectif ? Vous présenter en détails de nouvelles fonctionnalités, pas uniquement la manière dont elles fonctionnent, mais aussi la manière dont elles ont été conçues et développées par notre équipe conception et nos développeurs.

Premier chapitre aujourd’hui avec une fonctionnalité qui nous a donné du fil à retordre : l’ajout de sauts conditionnels dans un questionnaire. Vous voulez ajouter des questions conditionnelles, des embranchements ou des branches de questions à votre formulaire ? Suivez le guide.

Lire la suite

Nous sommes très heureux de vous présenter notre API publique. Que vous ayez besoin d’extraire des données en temps réel ou que vous ayez un projet d’intégration de données, c’est maintenant possible ! 

L’API inclut dès à présent de nombreuses données et vous permet de les exporter au format JSON. Voici une liste non exhaustive de ce que vous pourrez faire grâce à cette API : 

  • Analyser vos données le plus finement possible. Exportez des données et améliorez, manipulez ou combinez-les avec des informations provenant d’autres sources. 
  • Intégrer ces données à vos propres outils. Associez vos données à des applications existantes ou créez-en de nouvelles. Qu’il s’agisse du site de votre organisation, d’un tableau de bord ou d’un bot, vous pourrez le faire grâce à l’API. 
  • Synchroniser des applications existantes avec votre plateforme. Vous pouvez développer un connecteur afin d’ajouter automatiquement des données, les mettre à jour ou les supprimer.

La documentation de l’API GraphQL

Chaque plateforme Cap Collectif dispose de sa propre API et de sa documentation conçue pour les développeurs.

Apprenez comment activer cette fonction.

Lancez-vous grâce à notre documentation API sur votre plateforme ou sur une instance de démonstration. Nous avons construit cette API avec GraphQL, récupérer toutes les données dont vous avez besoin pourra donc se faire en une seule fois.

Vous ne connaissez pas encore GraphQL ? Lisez notre guide à ce propos. 

Demander un appui technique

Notre équipe API a écrit une aide complète, bien documentée et régulièrement mise à jour. Nous avons même ajouté des guides interactifs pour plusieurs cas d’usage. Mais, comme nous savons que l’utilisation d’une API peut être difficile, nous mettons à votre disposition notre équipe pour toutes vos questions, via l’adresse mail de support d’utilisation de l’API. Si vous êtes client, ce support technique est inclus dans nos abonnements, alors n’hésitez pas à l’utiliser. 

Nos premières intégrations de l’API

Après le lancement bêta de notre API il y a quelques mois, nous avons commencé à créer plusieurs exemples d’applications. La première est déjà disponible en open source : une application NodeJS que nous avons utilisée pour le granddebat.fr afin de générer tous les fichiers disponibles au téléchargement sur la page Open Data. N’oubliez pas de consulter les analyses qui en ont découlé. Avec un peu d’adaptation vous pouvez l’utiliser pour générer des fichiers anonymisés en Open Data aux formats CSV et JSON sur vos plateformes.

Voici deux autres exemples : 

  • Dans le cadre de son budget participatif, la ville de Rennes affiche un compteur en temps réel du nombre de votants : un bon moyen de lier participation numérique et présentielle !
  • La Région Occitanie affiche, elle, la liste des projets participatifs sur son portail de participation citoyenne.

C’est tout pour l’instant, mais on a hâte de voir vos prochaines réalisations ! 

Et ce n’est que le début ! 

Notre objectif est de rendre tout ce que vous voyez sur la plateforme disponible sur l’API publique. C’est, pour nous, une marque de notre engagement à faire fonctionner votre plateforme Cap Collectif avec les autres services que vous utilisez et développez. Nous sommes impatients d’avoir vos retours sur notre API, et vos demandes de futures fonctionnalités ! 


Visuel article développement

L’équipe Technique de Cap Collectif regorge de talents. Cette semaine, Amélie Tamisier vous explique comment l’équipe a créé un guide de style destiné à Cap Collectif.

Le guide de style – style guide en anglais – permet aux développeurs de regrouper et uniformiser les éléments visuels génériques qu’on retrouve sur notre plateforme. C’est alors une référence commune pour toute l’équipe. L’objectif ? Accroître l’efficacité lors des différents développement web !

Pour les novices, quelques précisions : un guide de style est une bibliothèque de composants réutilisables, c’est une référence commune pour toute l’équipe. Celui-ci permet d’avoir un code plus propre, plus cohérent et maintenable. Il est utile pour un projet qui est amené à évoluer dans le temps.

Retrouvez le guide style ici.

Pour celzéceux qui n’ont pas la chance de recevoir notre magnifique newsletter mensuelle, nous avons profité de la mise en pratique du nouveau Règlement général sur la protection des données (RGPD) pour développer de nouvelles fonctionnalités sur la plateforme. Vu que nous avons une politique de respect des données utilisateurs depuis toujours, ce RGPD ne change pas grand chose dans votre quotidien sur Capco.

Mais vu qu’on n’est pas non plus du genre à se tourner les pouces, voici ce que ce fameux RGPD nous a permis malgré tout d’améliorer.

En cuisine

Le bandeau CNIL obligatoire concernant les cookies est désormais plus précis pour obtenir le consentement explicite et positif de l’utilisateur. Sur Capco, il est possible d’utiliser trois types de cookie :

Anonymous

Si un utilisateur souhaite supprimer ses données de la plateforme, il a désormais plusieurs options. Soit il choisit d’anonymiser ses contributions parce qu’il souhaite avant tout que son identité (ou pseudo) disparaisse du site mais il veut que tout le contenu qu’il lui est associé reste en ligne, soit il choisit de kärchériser également le contenu de ses contributions. Dans tous les cas, les statistiques de contributions ne changent pas.

Bourrage impossible

En lien avec la fonctionnalité précédente : dès lors qu’une phase de participation est ouverte, toute suppression de compte utilisateur entraîne également la suppression du vote associé et surtout de son comptage. Cela permet d’éviter que des petits malins créent et suppriment des comptes à la volée pour voter plusieurs fois.

Reprendre ses données

Enfin, comme le prévoit le nouveau RGPD, chaque utilisateur de la plateforme peut télécharger ses données personnelles. Nous avons simplifié cette manipulation puisqu’il suffit de cliquer sur un bouton dans l’onglet Données Personnelles du profil pour générer des fichiers exportables.

* * *

Au final, on est très content de ce RGPD. Depuis toujours, nous sommes un peu maniaques avec le respect des données personnelles : non commercialisation des données (elles appartiennent par contrat au client, on n’y touche jamais), désindexation possible des moteurs de recherche pour les utilisateurs, possibilité d’anonymat pour participer… Et nous cherchons toujours à améliorer la plateforme !

Ce jeudi 9 novembre, entre 7h15 et 11h15, Cap Collectif a été la victime collatérale d’une grave panne survenue chez l’hébergeur français OVH, dont les serveurs abritent l’ensemble des instances de nos clients. Il en a résulté une impossibilité d’accéder à quasiment l’ensemble des plateformes Capco durant cette période.

Cet incident majeur, qui a frappé de très nombreux clients OVH durant près de quatre heures, a été causé notamment par la panne simultanée de deux alimentations EDF et des groupes électrogènes normalement prévus pour parer à la coupure de l’alimentation principale. Les équipes d’OVH ont été entièrement mobilisées sur cet incident, permettant un retour à la normale relativement rapide (explications d’OVH).

Cap Collectif, qui a veillé à contacter ses clients pour les informer de la situation, espère que cette panne n’aura pas causé de désagrément majeur aux utilisateurs de l’ensemble de ces plateformes.