2.3 KiB
2.3 KiB
3D-Druck Kostenkalkulation
Web-App zur Kalkulation von 3D-Druck-Kosten mit PDF-Rechnung und TXT-Export.
Setup
source .venv/bin/activate
pip install flask fpdf2 pyyaml
Start
python app.py
Funktionen
- Live-Berechnung bei jeder Eingabe (Material, Strom, Abschreibung, Arbeit, Gewinn)
- Dark Mode (persistiert in YAML-Konfiguration)
- PDF-Rechnung mit Kundendaten (via fpdf2)
- TXT-Export der Kalkulation
- Auto-Save aller Werte via AJAX (debounced 500ms)
Installation auf Proxmox (LXC-Container)
Das Skript proxmox-setup.sh erstellt einen Ubuntu-24.04-LXC-Container,
klont das Repository, installiert alle Abhangigkeiten und richtet einen
systemd-Service ein.
Auf dem Proxmox-Host als root ausfuhren:
bash -c "$(curl -fsSL https://gitea.teamthiele.de/ethiele/3ddruckkalkulation/raw/branch/main/proxmox-setup.sh)"
Nach Abschluss ist die App unter http://<CONTAINER-IP>:5000 erreichbar.
Container-ID und Name konnen als Argumente ubergeben werden:
bash -c "$(curl -fsSL https://gitea.teamthiele.de/ethiele/3ddruckkalkulation/raw/branch/main/proxmox-setup.sh)" - 105 mein-container
Container-Zugriff:
pct enter 201 # Shell im Container
systemctl status 3ddruck-kalkulation.service
journalctl -u 3ddruck-kalkulation.service -f
Technik
| Komponente | Technologie |
|---|---|
| Backend | Flask (Python) |
| Frontend | Tabler CSS, Bootstrap 5 |
| Icons | Tabler Icons |
fpdf2 (importiert als fpdf) |
|
| Config | YAML (Auto-Save) |
Projektstruktur
app.py # Flask-Server mit allen Routen
templates/index.html # Hauptseite (Formular + Ergebnisse)
templates/invoice.html # Rechnungsseite
static/style.css # Minimales Custom-CSS
static/script.js # Live-Berechnung + Auto-Save
druckkalkulation_config.yaml # Automatisch erstellte Konfiguration
3dDruckKalkulator.py # Alte Tkinter-Version (unused)
Hinweise
fpdf2wird alsfpdfimportiert (alte API,from fpdf import FPDF)- Alle UI-Texte sind Deutsch
- Die YAML-Config wird automatisch erstellt und bei jedem Tastendruck gespeichert
- Die alte
3dDruckKalkulator.py(Tkinter) wird nicht mehr verwendet