Prerequis
Avant de commencer, vous devez creer quelques comptes :- Inscrivez-vous pour obtenir un compte d’essai Kameleoon gratuit de 30 jours. Vous devrez terminer ce tutoriel dans les 30 jours suivant la demande du compte, mais le tutoriel ne devrait prendre qu’environ 30 minutes a realiser.
- Un compte GitHub.
Executer l’application d’exemple
Tout d’abord, vous allez faire fonctionner l’application dans GitHub Pages, afin que vous n’ayez pas a vous soucier de la configuration d’un serveur web. Vous devrez etre connecte a votre compte GitHub.- Dans le depot Bouncing ball sur GitHub, cliquez sur Fork. Suivez les instructions pour creer votre propre fork de l’application d’exemple dans
github.com/<your_username>/bouncing-ball. (Remplacez <your_username> dans tout ce tutoriel par le nom de votre compte GitHub.) - Dans votre nouveau depot
https://github.com/<your_username>/bouncing-ballsur GitHub, cliquez sur l’onglet Actions et cliquez sur le bouton pour activer les workflows. - Dans l’onglet Settings, cliquez sur Pages, cliquez sur le menu deroulant Source, puis cliquez sur GitHub Actions.
- Dans l’onglet Actions, cliquez sur Deploy static content to Pages > Run workflow > Run workflow.
https://<your_username>.github.io/bouncing-ball ! Elle devrait ressembler a ceci :

-
Dans votre depot GitHub, dans l’onglet Code, ouvrez le fichier
src/main.ts. - Cliquez sur le bouton Edit this file (avec l’icone crayon).
-
Trouvez et modifiez le fichier
/src/main.ts. Trouvez la ligne suivante :Remplacez la ligne par le code suivant :Le nouveau code ajoute une configuration avec unupdateIntervalde 1. Cette valeur reduit la frequence a laquelle le SDK interroge les modifications de configuration a une fois par minute (au lieu de la valeur par defaut de 60 minutes). Cette interrogation frequente n’est pas recommandee pour un environnement de production en raison de l’impact sur les performances, mais elle est utile pour le tutoriel. Kameleoon propose egalement une option streaming premium qui transmet immediatement les modifications de configuration au SDK. - Cliquez sur Commit changes….
Configurer un projet Kameleoon
Vous aurez besoin des identifiants de votre compte d’essai Kameleoon avant de commencer cette section.- Connectez-vous a l’application Kameleoon en utilisant les identifiants de votre compte d’essai.
- Dans le menu de gauche, deroulez Admin et cliquez sur Projects > New project.
-
Dans la boite de dialogue, cliquez sur Site: Feature flags dans le premier menu deroulant, et collez
https://<your_username>.github.io/bouncing-ballcomme URL of site. N’oubliez pas de remplacer<your_username>par le nom de votre compte GitHub. Cliquez sur Add. -
Copiez le site code affiche sur la page suivante.

-
Dans votre depot GitHub, dans l’onglet Code, modifiez le fichier
src/constants. Remplacez la valeursiteCodepar le site code que vous venez de copier et cliquez sur Commit changes.
https://<your_username>.github.io/bouncing-ball), vous devriez constater que tous les cercles rebondissants ont disparu. C’est parce que les cercles ont ete ajoutes par un feature flag Kameleoon dans un projet different. Vous venez de changer le site code afin que le site soit maintenant controle par votre projet Kameleoon, que vous n’avez pas encore entierement configure. Pas d’inquietude, vous allez ajouter vos propres cercles a l’application avec vos propres feature flags.
Depannage : si vous voyez toujours le texte Slow + Random + Big et les cercles rebondissants, essayez d’ouvrir la page dans une fenetre de navigation privee (ou Incognito).
Configurer les feature flags
Les feature flags permettent de deployer de nouvelles fonctionnalites a une audience limitee et de tester leur efficacite avant un deploiement complet. La configuration peut etre geree par des developpeurs ou d’autres membres de l’equipe. Comprendre comment les feature flags sont configures dans l’interface Kameleoon aide a utiliser efficacement les variables dans l’application.- Dans l’application Kameleoon, dans le menu Activate, cliquez sur Feature flags.
- Cliquez sur New feature flag.
-
Remplissez les champs avec les valeurs suivantes :
- Nom :
Bouncing ball demo - Project : {Selectionnez votre projet dans le menu deroulant}
- Flag type : Permanent
- Feature key :
bouncing_ball_demoVous pouvez laisser les champs tags et description vides.
- Nom :
- Cliquez sur Validate.
Configurer les variables
Les variables sont des chaines, des nombres, des booleens ou des valeurs JSON que vous utilisez dans le code de votre application pour modifier le comportement de l’application. Leurs valeurs changent en fonction de la variation a laquelle Kameleoon affecte le visiteur. Par exemple, pour determiner si les visiteurs restent plus longtemps sur un site lorsqu’ils recoivent une variation “Party time” par rapport a une variation “Hypnotize”, configurez une variation pour chaque option et lancez une expérience.- Sur la nouvelle page qui apparait, deroulez le menu Set Up et cliquez sur Variables.

-
Utilisez le bouton + Add Variable pour ajouter 6 variables avec les valeurs suivantes :
Cle de variable Type Valeur par defaut title_text String Default variation: 1 green ball randomize_on_bounce Boolean False balls_amount Number 1 ball_speed Number 10 ball_color String green ball_size Number 20 - Cliquez sur Save.
Configurer les variations
Les variations definissent les combinaisons possibles de variables qui controlent ce qu’un visiteur voit dans votre application. Kameleoon attribue a chaque visiteur une variation lors de sa premiere visite dans l’application.- Dans Set Up, cliquez sur Variations.
-
Utilisez le bouton + Add variation pour ajouter deux nouvelles variations :
-
Nom :
Party time- ball_size :
50 - ball_color :
random - ball_speed :
75 - balls_amount :
75 - randomize_on_bounce :
True - title_text :
Hey! Get up and dance!
- ball_size :
-
Nom :
Hypnotize- ball_size :
200 - ball_color :
blue - ball_speed :
2 - balls_amount :
10 - randomize_on_bounce :
False - title_text :
You're getting very, very sleepy
- ball_size :
-
Nom :
Configurer un objectif
Ensuite, vous allez configurer un objectif. Les objectifs definissent la facon dont vous souhaitez mesurer l’efficacite de vos variations. Il existe plusieurs types d’objectifs personnalisables differents que vous pouvez utiliser, mais ce tutoriel utilise une metrique de base “temps passe”.- Dans le menu Set Up, cliquez sur Goals > + Add goal.
-
Dans la section Configure goals, cliquez sur + Create a new goal et remplissez les champs suivants :
- Nom : Time spent
- Type : Time Spent
- Project : {Selectionnez votre projet}
- Cliquez sur Next et definissez l’objectif sur : The visitor spent more than 30 seconds.
- Cliquez sur Validate.
Deployer une expérience
Maintenant que vos variations sont configurees, vous pouvez creer une expérience qui affiche les deux variations a un sous-ensemble de votre audience. Vous afficherez une variation a 40 % de vos visiteurs et l’autre variation a 40 % de visiteurs distincts. Les 20 % restants de visiteurs verront une version non modifiee de l’application (la valeur par defaut).- Dans la section Rollout Planner, cliquez sur Production.
- Cliquez sur + Add a rule > Experiment.
- Reduisez le curseur Exposure a 80%.
- Sous Variations to serve, cliquez sur Party time et changez la valeur Exposition a 40.00%.
- Cliquez sur + Add a variation. La variation Hypnotize devrait etre selectionnee automatiquement (sinon, selectionnez-la). Changez la valeur Exposition a 40.00%.
- Mettez le bouton ON/OFF sur ON.
- Cliquez sur Save.
Tester l’application
Ouvrez l’application dans un navigateur. Vous devriez voir l’une des trois variations possibles : la variation Party time, la variation Hypnotize ou la variation par defaut.
Variation Party time
Variation Hypnotize
Variation par defautvisitorCode, qui est un ID unique vous identifiant, vous ne pouvez pas simplement actualiser la page car vous verrez toujours la variation a laquelle vous avez ete affecte en premier. Vous devez plutot apparaitre comme un nouveau visiteur. Voici les moyens les plus simples de le faire :
- Passer a un autre navigateur ou appareil.
- Ouvrir l’application dans une nouvelle fenetre privee a chaque fois (selon le navigateur choisi, cela peut s’appeler “Incognito”, “Private Browsing” ou quelque chose de similaire).
Etapes suivantes
- Dans la section Reporting de votre expérience, parcourez certains des resultats initiaux, des integrations disponibles et du journal d’activite. Vous n’aurez pas encore acces a beaucoup de donnees de resultats, en raison du faible trafic.
- Parcourez l’exemple de code pour comprendre comment les variables sont appliquees dans le code. Si vous etes a l’aise avec TypeScript, essayez d’ajouter votre propre variable.
- Parcourez le reste de cette documentation developpeur et le Guide d’utilisation Experimentation pour en apprendre davantage sur toutes les options et fonctionnalites disponibles.
- Installez le SDK de votre choix et commencez a creer vos propres feature flags, personnalisations et autres expériences.