📘 Tutoriel : Créer des addons pour FreeCAD
Objectif de la leçon : préparer l’addon à la distribution, créer des métadonnées et le publier sur GitHub, afin que tout utilisateur de FreeCAD puisse l’installer en un seul clic.
📦 Partie 1. Qu’est-ce que le gestionnaire d’addons ?
Le gestionnaire d’addons est un outil intégré à FreeCAD (Outils → Gestionnaire d'addons) qui :
- Affiche un catalogue de plus de 300 addons officiels
- Permet d’installer, mettre à jour et désinstaller des addons sans copier manuellement les fichiers
- Fonctionne avec les dépôts GitHub
Pour que votre addon y apparaisse, vous devez :
- Le télécharger sur GitHub
- Ajouter un fichier
package.xml - (Optionnel) Soumettre une PR à FreeCAD-addons
🗂 Partie 2. Préparer la structure du dépôt
Votre dossier doit ressembler à ceci :
BoxBuilderAddon/ ← racine du dépôt
├── Resources/
│ └── icons/
│ ├── box_builder.svg
│ └── create_box.svg
├── InitGui.py
├── box_builder_workbench.py
├── package.xml ← OBLIGATOIRE !
├── README.md ← recommandé
└── LICENSE ← obligatoire pour la publication
💡 Important : le nom du dossier racine doit correspondre au nom de l’addon et être le même que dans
InitGui.py.
📄 Partie 3. Créer package.xml
Ce fichier décrit votre addon pour le gestionnaire d’addons.
Créez un fichier package.xml à la racine :
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<package format="1" xmlns="https://wiki.freecad.org/Package_Metadata">
<name>BoxBuilderAddon</name>
<description>
A simple tool to create parametric boxes with custom dimensions and GUI.
Saves last used values between sessions.
</description>
<version>1.0.0</version>
<date>2025-04-05</date>
<maintainer email="your.email@example.com">Your Name</maintainer>
<license file="LICENSE">LGPL-2.1-or-later</license>
<url type="repository" branch="main">https://github.com/yourname/BoxBuilderAddon</url>
<url type="bugtracker">https://github.com/yourname/BoxBuilderAddon/issues</url>
<icon>Resources/icons/box_builder.svg</icon>
<content>
<workbench>BoxBuilderAddon</workbench>
</content>
<dependencies>
<freecad>0.20</freecad>
</dependencies>
</package>
🔍 Champs obligatoires :
<name>— doit correspondre au dossier<version>— au formatX.Y.Z<license>— indiquez le fichierLICENSEet le type de licence<url type="repository">— lien vers votre GitHub<icon>— chemin vers l’icône (relatif à la racine)<content><workbench>...</workbench></content>— indique qu’il s’agit d’un atelier
💡 La licence est obligatoire. LGPL-2.1-or-later est recommandée (comme FreeCAD lui-même).
📄 Partie 4. Fichier LICENSE
Créez un fichier LICENSE avec le texte de la licence.
Exemple pour LGPL-2.1 :
- Allez sur : https://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt
- Copiez tout le texte
- Collez-le dans le fichier
LICENSE
Ou utilisez GitHub : lors de la création d’un dépôt, vous pouvez choisir la licence automatiquement.
📝 Partie 5. Fichier README.md
Créez un simple README.md :
# Box Builder Addon for FreeCAD
A simple tool to create parametric boxes with custom dimensions.
## Features
- GUI dialog for entering length, width, height
- Saves last used values between sessions
- Unique object naming
- Optional centering on origin
## Installation
1. Open FreeCAD
2. Go to **Tools → Addon Manager**
3. Search for "BoxBuilderAddon"
4. Click **Install**
Or install manually by copying the folder to your `Mod` directory.
## Requirements
- FreeCAD 0.20 or newer
🌐 Partie 6. Publication sur GitHub
Étapes :
- Inscrivez-vous sur GitHub
- Cliquez sur New repository
- Nom :
BoxBuilderAddon - Initialiser sans README (vous l’avez déjà créé)
- Cliquez sur Create repository
- Suivez les instructions pour télécharger le dossier local :
git init
git add .
git commit -m "Initial release"
git branch -M main
git remote add origin https://github.com/yourname/BoxBuilderAddon.git
git push -u origin main
💡 Remplacez
yournamepar votre nom d’utilisateur GitHub.
🔍 Partie 7. Tester l’installation
Maintenant, tout utilisateur peut :
- Ouvrir FreeCAD
- Aller dans Outils → Gestionnaire d’addons
- Cliquer sur Vérifier les mises à jour
- Trouver BoxBuilderAddon et cliquer sur Installer
⚠️ Pour que l’addon apparaisse dans la liste officielle, vous devez envoyer une Pull Request à :
🔗 https://github.com/FreeCAD/FreeCAD-addons
Mais même sans cela, les utilisateurs peuvent l’installer via un lien direct :
- Dans le gestionnaire d’addons : Outils → Gestionnaire d’addons → … → Installer un addon personnalisé
- Coller l’URL :
https://github.com/yourname/BoxBuilderAddon
🧪 Exercice pratique
- Créez un compte GitHub (si vous n’en avez pas)
- Préparez la structure complète de l’addon avec
package.xml,LICENSE,README.md - Téléchargez le dépôt sur GitHub
- Installez votre addon via le gestionnaire d’addons sur une copie propre de FreeCAD (ou supprimez le dossier de
Modavant l’installation)
✅ Résultat
Vous savez maintenant :
- Créer des addons complets avec GUI et paramètres
- Ajouter des icônes
- Préparer les métadonnées
- Publier sur GitHub
- Rendre l’addon accessible au monde entier
🎓 Et après ?
Vous avez terminé tout le cours ! 🎉
Vous êtes maintenant un développeur d’addons FreeCAD.
Prochaines étapes possibles :
- Ajoutez la prise en charge du centrage (de l’exercice de la leçon 5)
- Implémentez la saisie multiple (création d’une grille de boîtes)
- Intégrez avec PartDesign pour créer des corps de révolution
- Écrivez un addon pour votre propre tâche : boulons, cadres, calculs, etc.
💬 Conclusion
FreeCAD n’est pas seulement un programme de CAO.
C’est une plateforme de créativité en ingénierie, et vous détenez maintenant la clé de son extension.
Écrivez des addons. Partagez-les. Changez le monde — un objet paramétrique à la fois. 🛠️
Si vous avez une idée pour un véritable addon — décrivez-la, et je vous aiderai à la réaliser !