- #42: Allow spools heavier than theoretical max (remove weight clamps)
- #43: Show filament custom fields on spool detail page
- #25: Sort spools by custom fields and remaining weight
- #35: Global search box for spool list
- #20: Gallery view for spools (color grid with progress bars)
- #36: Spool-level color override with ColorPicker
- #39: Cost analytics endpoint, total spent & avg cost/kg stats
- Fix: Filament select refresh after inline creation
- Fix: Parse temperatures from filament comments
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Extra Weight Field (#14): Track DryPods, custom holders in spool weight
calculations. New extra_weight field on spool with DB migration.
- Price/Cost Tracking: Compute remaining_value based on remaining weight
and price. Added column to spool list, inventory value on dashboard.
- Print History: Show print job history on spool detail page with
collapsible table showing filename, filament used, status, dates.
- Usage Analytics: New dashboard component with time-series chart
showing daily consumption, period selector (7/30/90 days), and
material breakdown. New API endpoints for analytics data.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add sticky positioning to form action buttons (always visible at bottom)
- Add Ctrl+S / Cmd+S keyboard shortcut to save forms
- Create reusable useFormShortcuts hook
- Apply to all create forms: spool, filament, vendor
Fixes: https://github.com/Donkie/Spoolman/issues/274
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Backend: Added ExternalSource enum, Filament3DFP model, and transform function
- Backend: Updated _sync() to fetch from both SpoolmanDB and 3dfilamentprofiles
- Frontend: Added source tabs to FilamentImportModal (All/SpoolmanDB/3DFP)
- Frontend: Updated ExternalFilament interface with source and temp range fields
- Frontend: Updated filament import handler to use temp range fields
Also includes:
- Dev mode styling (teal theme, DEV badge and banner)
- Translation keys for source filtering
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
When creating a spool, users can now create a new filament directly
from the filament dropdown without leaving the page. Similarly, when
creating a filament, users can create a new vendor inline.
New components:
- VendorCreateModal: Simple modal for quick vendor creation
- FilamentCreateModal: Modal with essential fields + nested vendor creation
Changes:
- Added dropdownRender to filament Select in spool create page
- Added dropdownRender to vendor Select in filament create page
- Added translation keys for success messages and placeholders
- Pre-fills sensible defaults (diameter 1.75mm, density 1.24 g/cm³)
Closes#1
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>