diff --git a/equipe.js b/equipe.js
new file mode 100644
index 0000000..3956411
--- /dev/null
+++ b/equipe.js
@@ -0,0 +1,47 @@
+const equipe = [
+ { nom: "Mélissa", job: "Stagiaire", partie: "Page contact" },
+ { nom: "Guillaume", job: "Stagiaire", partie: "Page services" },
+ { nom: "Matthieu", job: "Tuteur", partie: "Relecture" },
+];
+
+for (const membre of equipe) {
+ console.log(membre.nom + " — " + membre.job + " — " + membre.partie);
+}
+
+const corps = document.getElementById("corps_equipe");
+
+function afficherEquipe(liste) {
+ let lignes = "";
+ for (const membre of liste) {
+ lignes += `
+
+ | ${membre.nom} |
+ ${membre.job} |
+ ${membre.partie} |
+
`;
+ }
+ corps.innerHTML = lignes;
+}
+afficherEquipe(equipe);
+
+document.getElementById("nb_membres").textContent = equipe.length;
+
+const champRecherche = document.getElementById("recherche");
+
+champRecherche.addEventListener("input", function () {
+ const motCherche = champRecherche.value.toLowerCase();
+
+ // on garde seulement les membres dont le nom contient le texte tapé
+ const resultats = equipe.filter(function (membre) {
+ return membre.nom.toLowerCase().includes(motCherche);
+ });
+
+ afficherEquipe(resultats); // on ré-affiche, mais filtré
+});
+
+document.getElementById("trier").addEventListener("click", function () {
+ const triee = [...equipe].sort(function (a, b) {
+ return a.nom.localeCompare(b.nom);
+ });
+ afficherEquipe(triee);
+});