v1.1.12 — Modular Architecture, Documentation & E-Commerce
· 2 min lesetid
Major update focusing on code quality, comprehensive documentation, and e-commerce integration.
Modular Architecture
database.js(10,306 lines) split into 16 domain modules underserver/db/- 69 automated tests (Node.js built-in test runner)
- 80 input validation points across API endpoints
- 37 silent catch blocks fixed with proper logging
Print Tracking
- Server restart during print: Correctly calculates start time and filament usage from MQTT data
- Cloud estimate: Fetches filament/time estimates from Bambu Cloud as fallback
- Model names: Stores and displays MakerWorld model names and links in history, gallery, and scheduler
- Milestone capture: 3-tier fallback (live frame → TLS JPEG → RTSP)
- False temp alerts eliminated (Bambu standby at 140°C now ignored)
Build Plate Compatibility
- 62/62 filaments with plate compatibility ratings (Cool/Engineering/HT/Textured PEI)
- 62/62 filaments with glue stick recommendations (required/recommended/optional)
- Compatibility matrix with legend, glue stick column, and tips in filament tools
Pricing Model (Print Farm Academy)
- Cost estimator upgraded: labor, waste, markup, suggested selling prices (2×, 2.5×, 3×)
- New settings: setup time, markup percentage, nozzle cost, waste factor
labor_rate_hourbug fixed (labor cost was always 0)- Pricing model integrated into the order panel
E-Commerce & License (GeekTech.no)
- License validation against GeekTech API (
POST /api/license/verify) - Supports domain, IP, MAC, and IP+MAC binding
- 32-character hex license key with automatic IP/MAC detection
- Complete CRUD for orders (create, edit, delete, duplicate)
- Cost summary with suggested selling prices per project
Docusaurus Documentation
- 82 documentation pages in Norwegian (72 docs + 10 guides)
- Fully translated to 2 languages (1,400+ files)
- Guides: first print, filament setup, daily use, plate selection, troubleshooting, notifications, OBS
- Knowledge base: filaments, build plates, maintenance, troubleshooting
- GitHub Pages: skynett81.github.io/3dprintforge
- Accessible at
/docs/from the dashboard
Security & Performance
- Secure flag on session cookies when HTTPS is active
- N+1 query in
getSpoolsfixed with batch query - New database index on
print_history.started_at readBodyreturns 400 on invalid JSON instead of silent fallback- Intervals cleaned up on shutdown (no memory leaks)
- Docker healthcheck fixed for HTTPS mode
All Bambu Lab Printers Supported
X1C, X1C Combo, X1E, P1S, P1S Combo, P1P, P2S, P2S Combo, A1, A1 Combo, A1 mini, H2S, H2D (dual nozzle), H2C (toolchanger)
