Une extension Chrome pour supprimer intelligemment des amis Facebook avec des filtres avancĂ©s, un suivi en temps rĂ©el et un arrĂȘt d'urgence.
- 4 modes de filtrage â Noms arabes, noms non-arabes, sans amis en commun, ou tout supprimer
- Chargement automatique complet â Scroll intelligent qui dĂ©tecte et charge toute la liste d'amis avant de commencer
- Suivi en temps rĂ©el â Compteur de suppressions, d'amis ignorĂ©s, et barre de progression animĂ©e
- Limite configurable â DĂ©finir un nombre maximum de suppressions (ou 0 pour tout)
- DĂ©lai ajustable â ContrĂŽler la vitesse de suppression (en secondes)
- ArrĂȘt d'urgence â Bouton d'arrĂȘt instantanĂ© Ă tout moment
- Interface moderne â Popup avec design gradient, animations et feedback visuel
- Manifest V3 â Compatible avec les derniĂšres spĂ©cifications Chrome Extensions
- Google Chrome (version 88+)
- Un compte Facebook actif
-
Clonez le dépÎt :
git clone https://github.com/khalilbenaz/fb-friend-remover.git cd fb-friend-remover -
Ouvrez Chrome et allez dans la gestion des extensions :
chrome://extensions/ -
Activez le Mode développeur (toggle en haut à droite)
-
Cliquez sur « Charger l'extension non empaquetée » et sélectionnez le dossier du projet
-
VĂ©rifiez que l'icĂŽne đ„ apparaĂźt dans votre barre d'outils Chrome
-
Rendez-vous sur la page Amis de votre profil Facebook :
https://www.facebook.com/[votre-id]/friends -
Cliquez sur l'icĂŽne de l'extension dans la barre d'outils Chrome
-
Configurez les paramĂštres :
- Limite â Nombre maximum de suppressions (
0= illimitĂ©) - DĂ©lai â Temps d'attente entre chaque suppression (en secondes, minimum 0.5)
- Limite â Nombre maximum de suppressions (
-
Choisissez un mode de suppression :
Bouton Filtre Description đ Noms Arabes arabicSupprime uniquement les amis dont le nom contient des caractĂšres arabes (Unicode \u0600-\u06FF)đ€ Noms Non-Arabes non-arabicSupprime uniquement les amis dont le nom ne contient pas de caractĂšres arabes đ« Sans amis communs no-mutualSupprime les amis sans amis en commun (dĂ©tection par "commun" / "mutual") đïž TOUT SUPPRIMER allSupprime tous les amis sans exception -
Observez la progression en temps réel dans le popup
-
Utilisez âčïž ARRĂT D'URGENCE si vous souhaitez interrompre le processus
Les paramÚtres sont sauvegardés localement dans le navigateur entre les sessions :
| ParamÚtre | Type | Par défaut | Description |
|---|---|---|---|
Limite |
Entier â„ 0 | 0 (tout) |
Nombre maximum d'amis Ă supprimer. 0 = pas de limite |
Délai |
Float â„ 0.5 | 1 seconde |
Pause entre chaque suppression. Augmenter pour réduire le risque de blocage |
fb-friend-remover/
âââ manifest.json # Configuration Chrome Extension (Manifest V3)
âââ popup.html # Interface utilisateur du popup (HTML + CSS inline)
âââ popup.js # Logique du popup (Ă©vĂ©nements, communication, UI)
âââ content.js # Script injectĂ© dans Facebook (scroll, dĂ©tection, suppression)
âââ activate.html # Page d'activation
âââ images/ # IcĂŽnes de l'extension
â âââ 16.png
â âââ 48.png
â âââ 128.png
âââ .github/ # Configuration GitHub
âââ .gitignore
âââ LICENSE # MIT
âââ README.md
popup.js content.js (injecté dans Facebook)
ââââââââ ââââââââââââââââââââââââââââââââââ
Clic bouton
â
âââ VĂ©rifie URL facebook.com
âââ Injecte content.js
âââ Envoie message START âââââââș RĂ©ception config (filter, max, delay)
â â
â âââ 1. findScrollableContainer()
â â DĂ©tecte le bon conteneur scrollable
â â
â âââ 2. loadAllFriends()
â â Scroll + charge toute la liste
â â (jusqu'Ă 10 retries si bloquĂ©)
â â
â âââ 3. processRemoval()
â â Pour chaque carte d'ami :
â â - Filtre selon config
â â - scrollIntoView
â â - Clic menu "..." â "Retirer" â "Confirmer"
â â - Masque visuellement (opacity: 0.1)
â â
â âââ Messages UPDATE ââââââââââââââââ†Stats en temps rĂ©el
â { stats, isRunning, action } â
â â
âââ Clic STOP âââââââââââââââââââș state.isRunning = false
â â
⌠âŒ
Mise Ă jour UI finish() â arrĂȘt
L'extension utilise le systĂšme de messaging Chrome Extension (Manifest V3) :
popup.js â content.js: MessagesSTART(avec config) etSTOPcontent.js â popup.js: MessagesUPDATE(stats, Ă©tat, action en cours)
| Permission | Raison |
|---|---|
activeTab |
Accéder à l'onglet Facebook actif |
scripting |
Injecter content.js dans la page |
storage |
Sauvegarder les préférences utilisateur |
"host_permissions": ["https://www.facebook.com/*"]L'extension ne fonctionne que sur facebook.com.
Le script détecte automatiquement le conteneur scrollable de Facebook (qui n'est pas toujours window) en remontant le DOM depuis les cartes d'amis jusqu'au premier parent avec overflow-y: auto|scroll.
Utilise une regex Unicode pour identifier les caractĂšres arabes :
const isArabic = /[\u0600-\u06FF]/.test(name);Recherche les mots-clés "commun" (FR) ou "mutual" (EN) dans le texte de la carte :
const hasMutual = text.toLowerCase().includes('commun') ||
text.toLowerCase().includes('mutual');đŽ Action irrĂ©versible â La suppression d'amis est dĂ©finitive. Il n'existe aucun moyen de rĂ©cupĂ©rer automatiquement les amis supprimĂ©s.
đĄ Risque de blocage â Facebook peut temporairement restreindre votre compte si trop d'actions sont effectuĂ©es rapidement. Utilisez un dĂ©lai â„ 1 seconde pour minimiser ce risque.
đĄ Interface Facebook â Facebook modifie rĂ©guliĂšrement son interface. Si les sĂ©lecteurs DOM changent, les boutons "Retirer" ou "Confirmer" pourraient ne pas ĂȘtre trouvĂ©s. Le script gĂšre ces cas gracieusement (ferme le menu et passe au suivant).
đą Testez d'abord â Utilisez toujours une petite limite (ex:
5) pour vérifier que tout fonctionne correctement avant un nettoyage massif.
- Forkez le projet
- Créez une branche feature :
git checkout -b feature/ma-fonctionnalite
- Commitez vos changements :
git commit -am "Ajoute ma fonctionnalité" - Pushez et ouvrez une Pull Request
- Support d'autres langues pour la dĂ©tection des boutons (arabe, espagnolâŠ)
- Mode "dry-run" (simulation sans suppression réelle)
- Export de la liste d'amis avant suppression
- Filtrage par date d'ajout ou nombre d'interactions
| ProblĂšme | Solution |
|---|---|
| "Allez sur la page Amis de Facebook" | Assurez-vous d'ĂȘtre sur facebook.com/[votre-id]/friends |
| Le script ne charge pas tous les amis | Augmentez le nombre de retries ou attendez que la page soit entiÚrement chargée |
| Les amis ne se suppriment pas | Facebook a peut-ĂȘtre changĂ© ses sĂ©lecteurs CSS. Ouvrez une issue sur GitHub |
| Erreur de communication | Rechargez la page Facebook et relancez l'extension |
| Blocage temporaire Facebook | Attendez quelques heures et augmentez le délai entre les suppressions |
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.
| Techno | Version | Usage |
|---|---|---|
| Chrome Extensions | Manifest V3 | Architecture de l'extension |
| JavaScript | ES6+ | Logique applicative (async/await, arrow functions) |
| HTML5 / CSS3 | â | Interface popup (animations, gradients, grid layout) |
| Chrome Scripting API | â | Injection du content script |
| Chrome Messaging API | â | Communication popup â content script |