Skip to main content

Changelog

All notable changes to 3DPrintForge.


v1.1.12 — Modular Architecture, Documentation & E-Commerce (2026-03-22)

Modular Architecture

  • database.js (10,306 lines) split into 16 domain modules under server/db/
  • api-routes.js restored after failed splitting attempt (stability prioritized)
  • 69 automated tests (Node.js built-in test runner)
  • 80 input validation points on API endpoints
  • 37 silent catch blocks fixed with proper logging
  • Server restart during print: correctly calculates start time and filament usage
  • Cloud estimate from Bambu Cloud as fallback on server restart
  • Model name and MakerWorld link stored in history, gallery and scheduler
  • Milestone capture: 3-step fallback (live frame → TLS JPEG → RTSP)
  • False temperature alerts eliminated (Bambu standby 140°C ignored)

Plate Compatibility & Knowledge Base

  • 62/62 filaments have plate compatibility (Cool/Engineering/HT/Textured PEI)
  • 62/62 filaments have glue stick recommendation (required/recommended/optional)
  • Tips per material
  • Compatibility matrix with legend, glue stick and tips in filament tool

Full Pricing Model (Print Farm Academy)

  • Cost calculator upgraded: labor, waste, markup, sale prices (2×/2.5×/3×)
  • New settings: setup time, markup, nozzle cost, waste factor
  • labor_rate_hour bug fixed (labor cost was always 0)
  • Pricing model integrated in order panel

E-Commerce & Licensing (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
  • Full CRUD for orders (create, edit, delete, duplicate)
  • Cost summary with suggested sale prices per project

Docusaurus Documentation Site

  • 82 documentation pages (72 docs + 10 guides)
  • Fully translated into 2 languages (1400+ files)
  • Guides: first print, filament setup, daily use, plate selection, troubleshooting, alerts, OBS
  • Knowledge base: filaments, build plates, maintenance, troubleshooting
  • GitHub Pages deploy with Actions workflow
  • Available at /docs/ from the dashboard

Security & Performance

  • Secure flag on session cookies with HTTPS
  • N+1 query in getSpools fixed with batch query
  • New database index on print_history.started_at
  • readBody returns 400 on invalid JSON
  • Intervals cleared on shutdown (no memory leak)
  • Docker healthcheck fixed for HTTPS mode

Translations & Visual Cleanup

  • 12 components translated to Norwegian (Loading, Error, Quick Commands, etc.)
  • 25 dead files deleted (13 frontend-split, 12 route-split)
  • CSS variables fixed (var(--border) → var(--border-color))
  • PWA theme-color corrected (#00d4ff → #00AE42)
  • tabs.waste "Poop" → "Waste"
  • Service worker bumped for cache update

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)

v1.1.11 — Filament Analytics, Cloud API, RFID Library, OBS Redesign & Multi-Repo Integration (2026-03-19)

Bambu Lab Cloud API (42 methods)

  • Full Cloud API coverage: file upload, cloud print, device binding, user profile, 2FA
  • Token auto-refresh every 12 hours with expiry detection
  • MakerWorld design search and 3MF download

Filament Analytics (8 tabs)

  • Daily/weekly/monthly consumption tracking with aggregation
  • Material consumption rates, waste analysis, efficiency metrics
  • Depletion forecast with estimated empty date per spool
  • Cost analysis per vendor with utilization rate
  • Material substitution rules (10 predefined)
  • RAL color lookup (32 colors) with Delta-E matching
  • Storage alerts with humidity/temperature thresholds
  • Expiry date tracking for spools

SpoolEase Integration

  • 109 spool weights from catalog for accurate gross weight measurement
  • 75 Bambu Lab filament codes with temperature ranges
  • K-factor calibration per spool/printer/nozzle
  • Consumed-since-weighing with weighing workflow
  • Improved G-code parser with density/diameter from comments

Bambu Lab RFID Library

  • 223 variant→color mappings with hex codes and color names
  • 36 material types with drying recommendations from RFID data
  • Auto-enrichment of AMS trays with variant database
  • Fuzzy matching for tray_id_name variants

BambuBoard — 36 Print Stages

  • Complete stg_cur mapping with translations and SVG icons
  • Stage badge in control panel, fleet dashboard and countdown timer
  • Print stage in telemetry historical data

OBS Overlay Redesign

  • Side panel layout (320px) with transparent background
  • SVG spool visualizations for AMS trays with fill level
  • Progress ring, temperatures, print stage badges
  • Auto-detection of camera mode (fullscreen vs overlay)
  • OBS settings updated with position, MJPEG and snapshot URLs

Camera

  • MJPEG HTTP stream (/api/printers/:id/stream.mjpeg)
  • JPEG snapshot endpoint (/api/printers/:id/frame.jpeg)
  • Direct camera URLs in OBS settings with copy button

Label Generator Redesign

  • SVG spool visualization with fill level on each card
  • Color stripe, progress bar, vendor, temperatures, RAL code
  • Filament profile labels as new type
  • Size selection (S/M/L) with grid adjustment

Fleet Dashboard

  • Grid layout selector (Auto/1/2/3/4 columns) with localStorage persistence
  • Printer maintenance mode with orange badge and dimming
  • Labels for sorting and actions

BamBuddy Features

  • AMS remote drying via MQTT (start/stop with temperature and duration)
  • Print history photo linking (screenshots → print)
  • MQTT debug system with real-time WebSocket stream
  • Firmware status check per module
  • Timelapse re-encoding with speed, quality and trimming

Maintenance

  • Wear prediction moved as a tab into the maintenance panel
  • Monitoring section cleaned up (5 → 4 buttons)

Bug Fixes

  • Special characters (æøå) corrected in all API messages, print stages and OBS
  • SVG layer icon fixed (missing width/height, was too large)
  • Thumbnail URL in OBS corrected to proper API route

Database

  • Migrations v96–v103 with auto-seeding of SpoolEase and RFID Library data

v1.1.10 — Spool Visuals, Learning Center, Knowledge Base & UI Overhaul (2026-03-12)

Spool Visuals

  • All filament color indicators replaced with realistic spool SVG visuals across the entire dashboard
  • New global miniSpool() and spoolIcon() utilities for consistent spool rendering
  • Filament ring card redesigned with responsive spool visual, winding detail and container queries
  • Active filament, history, statistics, waste, forecast and filament tracker all use spool visuals

Knowledge Base & Learning Center

  • Knowledge base expanded to 169 items: 18 printers, 35 accessories, 62 filaments, 54 profiles
  • Added 8 new accessories (Liquid Glue, Hardened Steel Nozzle, AMS Lite Hub, Bambu Studio, OrcaSlicer, etc.)
  • Added 6 new filaments (PA Basic Nylon, HIPS, PLA Dual Color Silk, PLA Impact Tough, PETG Matte, ABS Matte)
  • Added 10 new printer profiles (H2S, H2C, X1C, X1E, P1P, A1 configurations)
  • Learning center expanded from 18 to 42 courses across all 5 categories
  • New courses covering slicer guides, troubleshooting, print techniques, filament care, maintenance and automation

UI Redesign

  • Complete CSS design system overhaul with refined transitions, grid layouts and glass morphism
  • Redesigned panels: protection, health, diagnostics, error analysis, queue, bedmesh, AMS
  • Improved filament tracker, statistics, telemetry, waste, calendar and multicolor panels
  • Redesigned login, setup and public status pages
  • Updated theme system with improved animations and variables

New Features

  • Achievements system expanded to 103 achievements with XP progression
  • Forecast panel rewritten with improved material predictions
  • OBS overlay settings page with URL builder, live preview and setup guide
  • History stats moved to dedicated analysis panel
  • Sidebar navigation consolidated with filament sub-tabs

Bug Fixes

  • Fixed false "Print complete" notification on page load when printer already in FINISH state
  • Only error/warning toasts now feed into notification center (no more routine message spam)
  • Fixed #settings/system/energy hash routing (energy tab was missing from route list)
  • Fixed AMS gram display accuracy and cost calculations
  • Removed unused dashboard-dnd and favorites components

v1.1.9 — Print Guard, History Sorting, AMS Redesign & 3D Progress Fix (2026-03-08)

  • Fixed guard system being completely non-functional (default settings fallback)
  • Guard now works out-of-the-box without requiring manual database setup
  • Fixed race condition where protection panel overwrote errors panel content

Error Handling

  • Eliminated false HMS errors (0500_0500, 0500_0600, 0C00_0300)
  • Added print error dedup across server restarts
  • Added PRINT_ERROR_IGNORE set for known false positives (0300_8003)
  • HMS codes in FINISH/IDLE state are now ignored

History Panel

  • Sort by date, name, duration, filament usage, or status
  • Toggle between grid and list view (compact rows with thumbnails)
  • Sort direction and view mode persisted in localStorage

Waste History

  • Sortable waste history entries (date, waste, used filament, duration)
  • Client-side sort with toggle direction

3D Preview & Fullscreen

  • Progress line now uses actual print percentage (mc_percent) instead of layer ratio
  • Fixes mismatch between progress bar and 3D reveal on both dashboard and fullscreen
  • Added fullscreen info bar with print progress %, status, time remaining, ETA, and layer info
  • Info bar uses proper theme colors for readability in both light and dark mode

AMS Panel

  • Tabs restyled with pill/capsule borders (Bambu Studio style)
  • Tabs aligned directly above their respective filament cards
  • Humidity indicator now uses pill-style border
  • Layer label in fullscreen uses proper i18n template interpolation

Translations

  • Added progress state keys: printing, paused, finished, idle, preparing, failed (nb/en)
  • Added history sort keys: sort_date, sort_name, sort_duration, sort_filament, sort_status (nb/en)
  • Added waste sort keys: sort_date, sort_waste, sort_used, sort_duration (nb/en)

Technical

  • Service worker cache bumped to v5
  • G-code console history styling added

v1.1.8 — Inventory UX, Cost Analytics, AMS Sync & Smart Cost Handling (2026-03-03)

Inventory & Cost

  • Inventory UX improvements with cost analytics
  • AMS sync enhancements
  • Smart cost handling and recalculation

Queue & Controls

  • Queue staggering and layer pauses
  • Z-offset wizard
  • Spool refill tracking
  • DYMO/ESC-POS label printing

Camera & Telemetry

  • Camera screenshots
  • Telemetry charts for print progress, layers, WiFi signal
  • Temperature trends

Cloud Integration

  • Cloud print history import
  • Retroactive print capture
  • AMS inventory tracking
  • Bambu Cloud login
  • Printer discovery

UI

  • Settings search
  • Sub-tab navigation for all settings
  • Consolidated filament dashboards
  • Multi-method tag scanner (camera, USB reader, manual entry)

v1.1.7 — NFC Scanner, Filament Tracking & Cloud Thumbnails (2026-03-03)

Filament & AMS

  • AMS import and filament tools improvements
  • Estimated remaining filament after print on AMS and filament panels
  • Fixed filament remaining mismatch between AMS and active filament panels

Camera

  • P2S camera detection
  • Cloud thumbnail caching and fallback

Maintenance

  • Fixed nozzle session retire SQL bug

Telemetry

  • Telemetry charts for print progress, layers, and WiFi signal

v1.1.6 — Feature Parity Release (2026-03-03)

Learning Center & Knowledge Base

  • Multi-step course system with progress tracking per user
  • Categories: Getting Started, Filament Guide, Maintenance, Print Quality
  • Searchable knowledge base: printers, accessories, filaments, slicer profiles
  • Full CRUD with tagging, cross-category search, seed data generator

Filament Inventory Enhancements

  • Favorite spools — heart toggle, favorites sorted to top
  • Color family filter — 12 HSL-based color chips
  • View modes — Grid, List, Table views with saved preference
  • Bulk add — quantity field (1–50) for creating identical spools
  • HueForge TD — Transmission Distance field for lithophane printing
  • Shareable color palette — public URL with color swatches and view counter
  • Enhanced import — drag-and-drop CSV/JSON with vendor auto-detection (Polymaker, Prusament, eSUN, Spoolman)
  • Duplicate detection during import with preview table
  • Multi-target dispatch — select multiple printers per queue job
  • Pre-print filament check — verifies spool weight and AMS material match
  • Intelligent load balancing — dispatches to printer with lowest job count

Cloud Slicer Integration

  • File upload with drag-and-drop (3MF, G-code, STL, OBJ, STEP, up to 100 MB)
  • Auto-detects OrcaSlicer and PrusaSlicer CLI
  • Automatic slicing with filament estimates and print time
  • FTPS upload to printer SD card
  • Job tracking (uploading → slicing → ready → uploaded)

SMS Notifications (7th Channel)

  • Twilio integration with Account SID, Auth Token, From/To numbers
  • Generic HTTP SMS gateway support for any SMS API provider
  • Full integration with all 14 notification events

Locale & Currency

  • Locale-based currency formatting using Intl.NumberFormat
  • Applied to spool costs, print cost estimates, price history

Technical

  • Database migrations 57–60
  • New module: server/slicer-service.js
  • ~80 new i18n keys across all 2 languages

v1.1.5 — Security Hardening (2026-03-01)

Security

  • Auto-generated self-signed SSL certificates (no manual setup needed)
  • HTTPS forced by default with HTTP→HTTPS redirect
  • HSTS (Strict-Transport-Security) header
  • Content Security Policy (CSP) header
  • Config file restricted to owner-only permissions (0600)
  • SMTP TLS verification enabled by default

UI Changes

  • Sidebar printer status indicators (online/offline/printing)
  • AMS panel visual redesign with compact horizontal layout
  • 3D viewport restructured — HUD info moved below canvas
  • Improved card grid sizing for 3D view, camera, and AMS panels
  • Anatomical bust model for demo mode 3D preview
  • Update notification toast banner

Other

  • Spoolman integration support
  • Database migrations v12–v20

v1.1.4 — HMS, Skip Objects, OBS, Spoolman, Themes (2026-02-28)

New Features

  • HMS error code database — 268 error codes with descriptions and wiki links
  • Skip objects — skip failed objects during active print via MQTT
  • OBS streaming overlay — standalone page at /obs.html for OBS Browser Source
  • Spoolman integration — connect to external Spoolman server for filament sync
  • Theme system — Light/Dark/Auto, 6 color presets, custom accent color, border radius slider
  • Speed slider — 50%–166% with preset buttons
  • Model info panel — link prints to MakerWorld, Printables, Thingiverse

Improvements

  • Enhanced thumbnail service with better 3MF parsing
  • Sparkline stats strip with rolling 60-sample mini-charts
  • i18n strings for all new features across 2 languages

v1.1.3 — Print Guard: Full Sensor Monitoring (2026-02-28)

New Sensors

SensorWhat it monitors
Temperature deviationNozzle/bed drifting from target
Filament runoutAMS tray below threshold
Print errorNon-zero error codes
Fan failureHeatbreak fan stopped during print
Print stallProgress stuck for configurable duration

Other

  • Per-printer configurable actions (notify/pause/stop/ignore)
  • Adjustable thresholds (temperature, filament %, stall time)
  • Database migration v12

v1.1.1 — Visual Redesign + Print Guard (2026-02-28)

Visual Redesign

  • Complete UI overhaul — glassmorphism effects, Inter font, smooth transitions
  • Redesigned all 8 panels
  • Hero card grids, SVG icon headers, improved responsive breakpoints
  • Automatic print protection using printer xcam sensors
  • Spaghetti detection, first layer issues, foreign objects, nozzle clumps
  • Configurable actions per event, cooldown, auto-resume
  • Active alert dashboard, protection event log

Camera & 3D Fullscreen

  • Click camera/3D preview to open fullscreen modal
  • Real-time layer progress in fullscreen

Authentication

  • Optional password protection with session management
  • Environment variable support for Docker/Pterodactyl

Other

  • 6 notification channels: Telegram, Discord, Email, Webhook, ntfy, Pushover
  • Database migrations v9–v11
  • Pterodactyl egg file with printer config variables

v1.1.0 — 3D Preview, MakerWorld, Notifications (2026-02-26)

New Features

  • 3D print preview — WebGL model viewer with layer animation and filament colors
  • MakerWorld integration — auto-detects MakerWorld prints, shows cover image with progress reveal
  • Notification system — 6 channels, 8 events, quiet hours, test per channel
  • Auto-update — checks GitHub Releases, one-click update with backup
  • Dashboard layout — drag-and-drop card reordering with lock/unlock
  • Quick status panel — fan speeds, WiFi, nozzle, SD, light, speed, errors
  • Thumbnail service — FTPS fetching from printer, 3MF parsing

Improvements

  • Extended statistics, enhanced telemetry, better error log
  • Filament drag-and-drop spool assignment, low stock warnings
  • Fan control sliders, temperature presets, G-code console
  • Camera reconnection improvements

Infrastructure

  • Dockerfile with healthcheck
  • docker-compose.yml with container name
  • .gitignore and .dockerignore

v1.0.0 — Initial Release (2026-02-26)

  • Real-time printer monitoring via MQTT
  • Temperature gauges and sparkline stats
  • Camera livestream via ffmpeg + jsmpeg
  • Print history and statistics
  • Multi-printer support
  • 17 language translations
  • Responsive design