π Corso di formazione: Creare addon per FreeCAD
- π¦ Parte 1. Cos’Γ¨ l’Addon Manager?
- π Parte 2. Preparazione della struttura del repository
- π Parte 3. Creazione di
package.xml - π Parte 4. File
LICENSE - π Parte 5. File
README.md - π Parte 6. Pubblicazione su GitHub
- π Parte 7. Test dell’installazione
- π§ͺ Esercizio pratico
- β Risultato
- π E adesso?
- π¬ Conclusione
Obiettivo della lezione: preparare l’addon per la distribuzione, creare i metadati e pubblicarlo su GitHub, in modo che qualsiasi utente di FreeCAD possa installarlo con un solo clic.
π¦ Parte 1. Cos’Γ¨ l’Addon Manager?
L’Addon Manager Γ¨ uno strumento integrato in FreeCAD (Strumenti β Addon Manager) che:
- Mostra un catalogo di oltre 300 addon ufficiali
- Permette di installare, aggiornare e disinstallare gli addon senza copiare manualmente i file
- Funziona con i repository su GitHub
Affinché il tuo addon appaia lì, devi:
- Caricarlo su GitHub
- Aggiungere il file
package.xml - (Opzionale) Inviare una Pull Request a FreeCAD-addons
π Parte 2. Preparazione della struttura del repository
La tua cartella dovrebbe apparire così:
BoxBuilderAddon/ β radice del repository
βββ Resources/
β βββ icons/
β βββ box_builder.svg
β βββ create_box.svg
βββ InitGui.py
βββ box_builder_workbench.py
βββ package.xml β OBBLIGATORIO!
βββ README.md β raccomandato
βββ LICENSE β obbligatorio per la pubblicazione
π‘ Importante: il nome della cartella radice deve corrispondere al nome dell’addon ed essere lo stesso di
InitGui.py.
π Parte 3. Creazione di package.xml
Questo file descrive il tuo addon per l’Addon Manager.
Crea il file package.xml nella radice:
<?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>
π Campi obbligatori:
<name>β deve corrispondere alla cartella<version>β nel formatoX.Y.Z<license>β indica il fileLICENSEe il tipo di licenza<url type="repository">β link al tuo GitHub<icon>β percorso dell’icona (relativo alla radice)<content><workbench>...</workbench></content>β indica che si tratta di un ambiente di lavoro
π‘ La licenza Γ¨ obbligatoria. Si raccomanda LGPL-2.1-or-later (come FreeCAD stesso).
π Parte 4. File LICENSE
Crea il file LICENSE con il testo della licenza.
Esempio per LGPL-2.1:
- Vai su: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt
- Copia tutto il testo
- Incollalo nel file
LICENSE
Oppure usa GitHub: quando crei un repository, puoi scegliere automaticamente una licenza.
π Parte 5. File README.md
Crea un semplice README.md:
# Box Builder Addon per FreeCAD
Uno strumento semplice per creare scatole parametriche con dimensioni personalizzate.
## Caratteristiche
- Finestra di dialogo GUI per inserire lunghezza, larghezza, altezza
- Salva gli ultimi valori utilizzati tra le sessioni
- Nomi degli oggetti unici
- Centratura opzionale sull'origine
## Installazione
1. Apri FreeCAD
2. Vai su **Strumenti β Addon Manager**
3. Cerca "BoxBuilderAddon"
4. Clicca su **Installa**
Oppure installa manualmente copiando la cartella nella tua directory `Mod`.
## Requisiti
- FreeCAD 0.20 o piΓΉ recente
π Parte 6. Pubblicazione su GitHub
Passaggi:
- Registrati su GitHub
- Clicca su New repository
- Nome:
BoxBuilderAddon - Inizializza senza README (lo hai giΓ creato)
- Clicca su Create repository
- Segui le istruzioni per caricare la cartella locale:
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
π‘ Sostituisci
yournamecon il tuo login GitHub.
π Parte 7. Test dell’installazione
Ora qualsiasi utente puΓ²:
- Aprire FreeCAD
- Andare su Strumenti β Addon Manager
- Cliccare su Verifica aggiornamenti
- Trovare BoxBuilderAddon e cliccare su Installa
β οΈ AffinchΓ© l’addon appaia nell’elenco ufficiale, Γ¨ necessario inviare una Pull Request a:
π https://github.com/FreeCAD/FreeCAD-addons
Ma anche senza questo, gli utenti possono installarlo tramite un link diretto:
- Nell’Addon Manager: Strumenti β Addon Manager β β¦ β Installa addon personalizzato
- Incollare l’URL:
https://github.com/yourname/BoxBuilderAddon
π§ͺ Esercizio pratico
- Crea un account GitHub (se non ne hai uno)
- Prepara la struttura completa dell’addon con
package.xml,LICENSE,README.md - Carica il repository su GitHub
- Installa il tuo addon tramite l’Addon Manager su una copia pulita di FreeCAD (o elimina la cartella da
Modprima dell’installazione)
β Risultato
Ora sai:
- Creare addon completi con GUI e impostazioni
- Aggiungere icone
- Preparare i metadati
- Pubblicare su GitHub
- Rendere l’addon disponibile a tutto il mondo
π E adesso?
Hai completato l’intero corso! π
Ora sei uno sviluppatore di addon per FreeCAD.
Possibili passi successivi:
- Aggiungi il supporto per la centratura (dall’esercizio della Lezione 5)
- Implementa l’input multiplo (creazione di una griglia di scatole)
- Integra con PartDesign per creare corpi di rivoluzione
- Scrivi un addon per il tuo compito specifico: bulloni, telai, calcoli, ecc.
π¬ Conclusione
FreeCAD non Γ¨ solo un programma CAD.
Γ una piattaforma per la creativitΓ ingegneristica, e ora possiedi la chiave per espanderla.
Scrivi addon. Condividili. Cambia il mondo β un oggetto parametrico alla volta. π οΈ
Se hai un’idea per un addon reale β descrivila, e ti aiuterΓ² a realizzarla!