# Qualiopi - Generateur de dossiers de formation Outil d'automatisation pour creer des dossiers de formation a partir d'un template existant. Remplace en masse les informations (client, dates, formateur, etc.) dans tous les fichiers `.docx` d'un dossier, en preservant le formatage d'origine. ## Prerequis - Python 3.10+ - python-docx (`pip3 install python-docx`) - PyYAML (`pip3 install pyyaml`) ## Structure du projet ``` qualiopi/ ├── replace_docx.py # Script de remplacement ├── template/ # Dossier template (ne pas modifier) │ ├── CONDITIONS_GENERALES_DE_VENTE.docx │ ├── formation_template.yaml # Modele de config a copier │ └── ... # Autres documents template └── formations/ # Dossiers generes par formation └── excel_dupont_avril2026/ ├── formation.yaml # Config de la formation ├── rapport.md # Rapport des modifications ├── CONDITIONS_GENERALES_DE_VENTE.docx # Copie modifiee └── ... ``` ## Utilisation ### 1. Creer le dossier de la formation ```bash mkdir -p formations/excel_dupont_avril2026 ``` ### 2. Copier et configurer le YAML ```bash cp template/formation_template.yaml formations/excel_dupont_avril2026/formation.yaml ``` Editer `formation.yaml` avec les infos de la formation : ```yaml dossier_source: template remplacements: - ancien: "Word - Initiation bureautique" nouveau: "Excel Avance - TCD" - ancien: "Societe Martin SARL" nouveau: "Societe Dupont SAS" - ancien: "10 et 11 mars 2026" nouveau: "15 et 16 avril 2026" ``` ### 3. Lancer le script ```bash python3 replace_docx.py formations/excel_dupont_avril2026/formation.yaml ``` Le script : 1. Copie les `.docx` du template dans le dossier de la formation 2. Applique tous les remplacements 3. Genere un fichier `rapport.md` dans le dossier de la formation ### 4. Verifier le rapport Ouvrir `formations/excel_dupont_avril2026/rapport.md`. Il contient : - La date d'execution - Un tableau par fichier avec les remplacements effectues et le nombre d'occurrences - La liste des remplacements non trouves (s'il y en a) ## Options ### Cibler un fichier specifique Par defaut, chaque remplacement s'applique a tous les `.docx`. Pour cibler un fichier : ```yaml remplacements: - ancien: "Texte specifique" nouveau: "Nouveau texte" fichiers: ["convention.docx"] ``` ### Chemins Tous les chemins dans le YAML sont relatifs a la racine du projet (dossier contenant `replace_docx.py`). ## Ce qui est pris en charge | Zone du document | Supporte | |---|---| | Paragraphes du corps | Oui | | Cellules de tableaux | Oui | | Tableaux imbriques | Oui | | En-tetes de page | Oui | | Pieds de page | Oui | | Formatage (police, taille, couleur, gras) | Preserve | | Texte decoupe sur plusieurs runs | Gere automatiquement | ## Utilisation avec Claude Le skill `/formation-docx-replacer` permet de preparer un dossier automatiquement : ``` /formation-docx-replacer ma_nouvelle_formation ``` Claude cree le dossier dans `formations/`, copie le template YAML et indique la marche a suivre.