{"id":30624502,"url":"https://github.com/tiger-githubb/fillengine","last_synced_at":"2025-08-30T17:17:10.905Z","repository":{"id":302543175,"uuid":"1012139709","full_name":"tiger-githubb/FillEngine","owner":"tiger-githubb","description":null,"archived":false,"fork":false,"pushed_at":"2025-08-24T14:25:48.000Z","size":258,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-24T19:35:51.547Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tiger-githubb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-01T22:00:42.000Z","updated_at":"2025-08-24T14:25:52.000Z","dependencies_parsed_at":null,"dependency_job_id":"29262b84-d7a5-4de1-9689-fb03c41c35fd","html_url":"https://github.com/tiger-githubb/FillEngine","commit_stats":null,"previous_names":["tiger-githubb/fillengine"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tiger-githubb/FillEngine","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiger-githubb%2FFillEngine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiger-githubb%2FFillEngine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiger-githubb%2FFillEngine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiger-githubb%2FFillEngine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tiger-githubb","download_url":"https://codeload.github.com/tiger-githubb/FillEngine/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiger-githubb%2FFillEngine/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272878333,"owners_count":25008340,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-30T02:00:09.474Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-30T17:17:09.900Z","updated_at":"2025-08-30T17:17:10.894Z","avatar_url":"https://github.com/tiger-githubb.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚀 Auto-Fill Forms Extension\n\nExtension Chrome moderne pour le remplissage automatique intelligent de formulaires web, en particulier Google Forms. Maintenant avec support de données CSV personnalisées !\n\n## ✨ Fonctionnalités\n\n- 🎯 **Remplissage intelligent** : Détection automatique des champs de formulaire\n- � **Support Google Forms** : Optimisé pour les formulaires Google\n- � **Données CSV** : Chargez vos propres données depuis un fichier CSV\n- � **Configuration flexible** : Adaptation automatique selon le type de page\n- 📈 **Statistiques détaillées** : Rapport complet du remplissage\n- 🎨 **Interface moderne** : Design épuré et intuitif\n\n## 🆕 Nouveautés v2.0\n\n- ✅ **Suppression des données en dur** : Plus de données codées dans l'extension\n- ✅ **Upload CSV** : Chargez vos données personnelles via un fichier CSV\n- ✅ **Sécurité améliorée** : Vos données restent locales\n- ✅ **Flexibilité maximale** : Utilisez l'extension avec n'importe quelles données\n- ✅ **Validation avancée** : Vérification automatique du format CSV\n\n## 📦 Installation\n\n1. Téléchargez ou clonez ce projet\n2. Ouvrez Chrome et accédez à `chrome://extensions/`\n3. Activez le \"Mode développeur\"\n4. Cliquez sur \"Charger l'extension non empaquetée\"\n5. Sélectionnez le dossier de l'extension\n\n## 🎯 Utilisation\n\n### 1. Préparer vos données\n\n1. Créez un fichier CSV avec vos données personnelles\n2. Utilisez le fichier `example_data.csv` comme modèle\n3. Consultez le `CSV_GUIDE.md` pour les détails complets\n\n### 2. Charger les données\n\n1. Cliquez sur l'icône de l'extension dans Chrome\n2. Cliquez sur \"📁 Charger données CSV\"\n3. Sélectionnez votre fichier CSV\n4. Attendez la confirmation de chargement\n\n### 3. Remplir un formulaire\n\n1. Naviguez vers le formulaire web\n2. Cliquez sur l'icône de l'extension\n3. Cliquez sur \"Remplir le formulaire\"\n4. Consultez les statistiques de remplissage\n\n## � Structure du projet\n\n```\nextension/\n├── manifest.json          # Configuration de l'extension\n├── background.js          # Script d'arrière-plan\n├── content.js            # Script de contenu principal\n├── popup.html            # Interface utilisateur\n├── popup.js              # Logique de l'interface\n├── example_data.csv      # Exemple de données CSV\n├── CSV_GUIDE.md          # Guide détaillé du format CSV\n├── README.md             # Ce fichier\n└── public/\n    └── icons/            # Icônes de l'extension\n        ├── icon16.png\n        ├── icon32.png\n        ├── icon48.png\n        └── icon128.png\n```\n\n## 🔧 Configuration CSV\n\n### Format requis\n\nVotre fichier CSV doit contenir 38 colonnes spécifiques. Consultez `CSV_GUIDE.md` pour la liste complète.\n\n### Exemple minimal\n\n```csv\nlastName,firstName,fullName,gender,sex,email,phone,mobile,birthPlace,birthCountry,residence,residenceCountry,nationality,address,idNumber,passportNumber,cniNumber,fatherName,motherName,usualLanguage,motherLanguage,profession,company,academicReason,disabilities,birthDate,idExpirationDate,idIssuanceDate,examSubjects,idType,examTypes,hasDisabilities,agreement,termsAccepted,preferredLanguage,hasExperience,needsAccommodation,isFirstTime\nDUPONT,Jean,\"Jean DUPONT\",Masculin,Homme,jean.dupont@email.com,0123456789,0123456789,Paris,France,Lyon,France,Française,\"123 Rue Example, Lyon\",FR123456789,FR123456789,FR123456789,Pierre DUPONT,Marie MARTIN,Français,Français,Développeur,TechCorp,Académique,Aucun,1985-03-15,2030-12-31,2020-01-01,Tous,CNI,\"CE,CO\",Aucun,true,true,Français,true,false,true\n```\n\n    newField: \"New Value\",\n\n},\n};\n\n```\n\n### Step 2: Add Field Mappings\n\n## 🎨 Interface utilisateur\n\nL'extension propose une interface moderne avec :\n\n- **Section upload** : Zone de glisser-déposer pour les fichiers CSV\n- **Status en temps réel** : Indication du statut de chargement\n- **Bouton de remplissage** : Action principale avec feedback visuel\n- **Statistiques détaillées** : Rapport complet avec métriques\n- **Résultats détaillés** : Liste des champs traités\n\n## 🔍 Types de champs supportés\n\n- ✅ **Champs texte** : input[type=\"text\"], textarea\n- ✅ **Emails** : input[type=\"email\"]\n- ✅ **Téléphones** : input[type=\"tel\"]\n- ✅ **Dates** : input[type=\"date\"]\n- ✅ **Sélections** : select, dropdown\n- ✅ **Boutons radio** : input[type=\"radio\"], role=\"radio\"\n- ✅ **Cases à cocher** : input[type=\"checkbox\"], role=\"checkbox\"\n\n## 🌐 Sites supportés\n\n- **Google Forms** : Support complet avec sélecteurs optimisés\n- **Formulaires génériques** : Détection automatique des champs\n- **Pages locales** : Mode test pour le développement\n\n## � Développement\n\n### Structure du code\n\n- `content.js` : Logique principale de détection et remplissage\n- `popup.js` : Interface utilisateur et gestion CSV\n- `background.js` : Gestion des permissions et communication\n\n### Classes principales\n\n- `FormDetector` : Détection des éléments de formulaire\n- `FieldMatcher` : Correspondance intelligente des champs\n- `FieldFiller` : Remplissage des différents types de champs\n- `FormAutoFiller` : Orchestration principale\n\n## � Sécurité et confidentialité\n\n- ✅ **Données locales** : Aucune transmission de données\n- ✅ **Permissions minimales** : Accès uniquement aux onglets actifs\n- ✅ **Code open source** : Transparence totale\n- ✅ **Pas de tracking** : Aucune collecte de données\n\n## 🐛 Dépannage\n\n### Problèmes courants\n\n1. **Champs non remplis** :\n   - Vérifiez que votre CSV est correctement formaté\n   - Consultez la console pour les erreurs\n\n2. **CSV non reconnu** :\n   - Vérifiez le nombre de colonnes (37 requis)\n   - Utilisez l'exemple fourni comme base\n\n3. **Formulaire non détecté** :\n   - Actualisez la page\n   - Vérifiez que la page contient des formulaires\n\n### Debug\n\nOuvrez la console développeur (F12) pour voir les logs détaillés :\n- `[AutoFill]` : Messages de l'extension\n- Statistiques de détection\n- Erreurs de remplissage\n\n## 📊 Métriques\n\nL'extension fournit des statistiques complètes :\n\n- **Questions détectées** : Nombre total de champs trouvés\n- **Champs remplis** : Nombre de champs complétés avec succès\n- **Taux de réussite** : Pourcentage de réussite global\n- **Détails par champ** : Statut individuel de chaque champ\n\n## 🤝 Contribution\n\nLes contributions sont les bienvenues ! N'hésitez pas à :\n\n1. Signaler des bugs\n2. Proposer des améliorations\n3. Soumettre des pull requests\n4. Améliorer la documentation\n\n## 📄 Licence\n\nCe projet est distribué sous licence MIT. Voir le fichier LICENSE pour plus de détails.\n\n## 🆘 Support\n\nPour obtenir de l'aide :\n\n1. Consultez ce README et le `CSV_GUIDE.md`\n2. Vérifiez les issues existantes\n3. Créez une nouvelle issue si nécessaire\n4. Incluez les logs de la console pour les bugs\n\n---\n\n**Développé avec ❤️ pour simplifier le remplissage de formulaires web**\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiger-githubb%2Ffillengine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftiger-githubb%2Ffillengine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiger-githubb%2Ffillengine/lists"}