3D Filament Manager

Un’applicazione desktop per gestire il tuo inventario di filamenti per stampa 3D. Tieni traccia di materiali, colori, utilizzo, costi e impostazioni del slicer in un unico posto.
✨ Funzionalità
- 🌐 Supporto multilingua: Disponibile in inglese e italiano
- 🎨 Interfaccia utente moderna: Interfaccia pulita con icone emoji e supporto per temi (modalità chiara/scura)
- 📊 Gestione completa dei filamenti:
- Memorizza informazioni dettagliate sui filamenti (marca, materiale, colore, diametro, ecc.)
- Tieni traccia dell’utilizzo e della quantità rimanente
- Calcola i costi del materiale
- Monitoraggio prezzi e storico
- Analisi interattiva dei prezzi con visualizzazioni
- Confronto prezzi tra fornitori
- ⚙️ Integrazione con lo slicer:
- Salva e gestisci profili slicer (Cura, PrusaSlicer, eQuidiSlicer)
- Profili di stampa personalizzati per diverse stampanti
- 🔍 Ricerca e filtraggio avanzati:
- Cerca per qualsiasi proprietà del filamento
- Ordina per qualsiasi colonna
- Filtra per tipo di materiale, colore o tag personalizzati
- 📂 Importa/Esporta:
- Esegui backup e ripristina la tua libreria di filamenti
- Condividi profili con altri
- Supporto per importazione/esportazione multipla
- 🔒 Sicurezza dei dati:
- Impostazioni salvate nella directory
config/
- Nessuna connessione internet richiesta
- Archiviazione dati locale
🚀 Requisiti
- Python 3.8+
- Pacchetti richiesti (installati automaticamente):
lxml
- Elaborazione XML veloce
pillow
- Elaborazione immagini per le icone
matplotlib
- Visualizzazione dati per l’analisi dei prezzi
🛠️ Installazione
Prerequisiti
- Python 3.8 o superiore
- Git (opzionale, per lo sviluppo)
Passaggi di installazione
-
Clona il repository (o scaricalo come ZIP):
git clone https://github.com/Nsfr750/3D_Filament_Manager.git
cd 3D_Filament_Manager
-
Crea e attiva un ambiente virtuale (consigliato):
# Su Windows
python -m venv venv
.\venv\Scripts\activate
# Su macOS/Linux
python3 -m venv venv
source venv/bin/activate
-
Installa le dipendenze:
pip install -r requirements.txt
-
Avvia l’applicazione:
Archiviazione dati
- I profili dei filamenti sono memorizzati nella directory
fdm/
- Le impostazioni dell’applicazione sono salvate nella directory
config/
- I log vengono scritti nella directory
logs/
🤝 Contributi
Siamo aperti ai contributi! Ecco come puoi aiutare:
- Segnala bug aprendo una issue
- Suggerisci nuove funzionalità o miglioramenti
- Invia pull request con modifiche al codice
- Aiuta a migliorare la documentazione
- Traduci l’applicazione in nuove lingue
Configurazione per lo sviluppo
- Fai un fork del repository
- Crea un branch per la tua funzionalità (
git checkout -b feature/feature-straordinaria
)
- Fai il commit delle tue modifiche (
git commit -m 'Aggiungi una funzionalità straordinaria'
)
- Esegui il push sul branch (
git push origin feature/feature-straordinaria
)
- Apri una Pull Request
Stile del codice
- Segui le linee guida PEP 8
- Usa i type hint per una migliore chiarezza del codice
- Scrivi docstring per tutte le funzioni e classi pubbliche
📜 Licenza
Questo progetto è concesso in licenza con la GNU General Public License v3.0. Vedi il file LICENSE per i dettagli.
🙏 Supporto
Se trovi utile questo progetto, considera di supportarne lo sviluppo:
📞 Contatti
- GitHub: @Nsfr750
- Email: nsfr750@yandex.com
Supporta lo sviluppatore
Se trovi utile questa applicazione, per favore considera di supportare lo sviluppatore: