Commit Graph

337 Commits

Author SHA1 Message Date
a18daa8134 fix: Update filament edit page to use temperature ranges
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 23:37:00 -06:00
bf775f3745 feat: Add QR code size setting for fixed-size QR codes
Some checks failed
CI / style (push) Has been cancelled
CI / build-client (push) Has been cancelled
CI / build-amd64 (push) Has been cancelled
CI / build-tester (push) Has been cancelled
CI / test (cockroachdb) (push) Has been cancelled
CI / test (mariadb) (push) Has been cancelled
CI / test (postgres) (push) Has been cancelled
CI / test (sqlite) (push) Has been cancelled
CI / build-arm64 (push) Has been cancelled
CI / build-armv7 (push) Has been cancelled
CI / publish-images (push) Has been cancelled
CI / publish-release (push) Has been cancelled
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 23:30:11 -06:00
a97914f6c8 feat: Default QR codes to use HTTP URLs instead of custom protocol
Some checks failed
CI / style (push) Has been cancelled
CI / build-client (push) Has been cancelled
CI / build-amd64 (push) Has been cancelled
CI / build-tester (push) Has been cancelled
CI / test (cockroachdb) (push) Has been cancelled
CI / test (mariadb) (push) Has been cancelled
CI / test (postgres) (push) Has been cancelled
CI / test (sqlite) (push) Has been cancelled
CI / build-arm64 (push) Has been cancelled
CI / build-armv7 (push) Has been cancelled
CI / publish-images (push) Has been cancelled
CI / publish-release (push) Has been cancelled
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 23:25:00 -06:00
59f8f5d9f7 style: Keep teal theme color
Some checks failed
CI / style (push) Has been cancelled
CI / build-client (push) Has been cancelled
CI / build-amd64 (push) Has been cancelled
CI / build-tester (push) Has been cancelled
CI / test (cockroachdb) (push) Has been cancelled
CI / test (mariadb) (push) Has been cancelled
CI / test (postgres) (push) Has been cancelled
CI / test (sqlite) (push) Has been cancelled
CI / build-arm64 (push) Has been cancelled
CI / build-armv7 (push) Has been cancelled
CI / publish-images (push) Has been cancelled
CI / publish-release (push) Has been cancelled
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 23:19:32 -06:00
1e3e956dd1 style: Remove dev styling for production deployment
Some checks failed
CI / style (push) Has been cancelled
CI / build-client (push) Has been cancelled
CI / build-amd64 (push) Has been cancelled
CI / build-tester (push) Has been cancelled
CI / test (cockroachdb) (push) Has been cancelled
CI / test (mariadb) (push) Has been cancelled
CI / test (postgres) (push) Has been cancelled
CI / test (sqlite) (push) Has been cancelled
CI / build-arm64 (push) Has been cancelled
CI / build-armv7 (push) Has been cancelled
CI / publish-images (push) Has been cancelled
CI / publish-release (push) Has been cancelled
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 23:17:38 -06:00
613176dd42 feat: Add database import/export functionality (Issue #10)
Some checks failed
CI / style (push) Has been cancelled
CI / build-client (push) Has been cancelled
CI / build-amd64 (push) Has been cancelled
CI / build-tester (push) Has been cancelled
CI / test (cockroachdb) (push) Has been cancelled
CI / test (mariadb) (push) Has been cancelled
CI / test (postgres) (push) Has been cancelled
CI / test (sqlite) (push) Has been cancelled
CI / build-arm64 (push) Has been cancelled
CI / build-armv7 (push) Has been cancelled
CI / publish-images (push) Has been cancelled
CI / publish-release (push) Has been cancelled
Backend:
- New /api/v1/backup/export endpoint - exports all data as single JSON
- New /api/v1/backup/import endpoint - imports JSON with merge or replace
- Handles vendors, filaments, spools, adjustments, settings
- Remaps IDs to maintain relationships during import

Frontend:
- Added Backup & Restore section to Settings page
- Download Backup button for export
- Import with merge or replace options
- Warning confirmation for replace mode

This enables migrating between PostgreSQL and SQLite databases.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 22:47:09 -06:00
671d3bd3d1 feat: Add 3dfilamentprofiles.com integration (Issue #7)
Some checks failed
CI / style (push) Has been cancelled
CI / build-client (push) Has been cancelled
CI / build-amd64 (push) Has been cancelled
CI / build-tester (push) Has been cancelled
CI / test (cockroachdb) (push) Has been cancelled
CI / test (mariadb) (push) Has been cancelled
CI / test (postgres) (push) Has been cancelled
CI / test (sqlite) (push) Has been cancelled
CI / build-arm64 (push) Has been cancelled
CI / build-armv7 (push) Has been cancelled
CI / publish-images (push) Has been cancelled
CI / publish-release (push) Has been cancelled
- 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>
2026-01-14 21:03:25 -06:00
d804329b77 feat: Add spool adjustment history tracking (#6)
Track history of all spool weight/length adjustments with timestamps and comments:

Backend:
- Add SpoolAdjustment database model with spool_id, timestamp, type, value, comment
- Add Alembic migration for spool_adjustment table
- Add SpoolAdjustment Pydantic model for API responses
- Update use_weight, use_length, and measure functions to record adjustments
- Add GET /api/v1/spool/{id}/adjustments endpoint for history retrieval
- Add optional comment parameter to use/measure endpoints

Frontend:
- Add ISpoolAdjustment interface to spool model
- Add collapsible adjustment history table to spool show page
- Display timestamp, type (weight/length), amount, and comment
- Add translation keys for history table

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 20:18:56 -06:00
3451996a8f feat: Add temperature ranges for extruder and bed temps (#5)
Some checks failed
CI / style (push) Has been cancelled
CI / build-client (push) Has been cancelled
CI / build-amd64 (push) Has been cancelled
CI / build-tester (push) Has been cancelled
CI / test (cockroachdb) (push) Has been cancelled
CI / test (mariadb) (push) Has been cancelled
CI / test (postgres) (push) Has been cancelled
CI / test (sqlite) (push) Has been cancelled
CI / build-arm64 (push) Has been cancelled
CI / build-armv7 (push) Has been cancelled
CI / publish-images (push) Has been cancelled
CI / publish-release (push) Has been cancelled
Store extruder and bed temperatures as min/max ranges instead of
single values for more accurate filament specifications.

Backend changes:
- Add 4 new columns: settings_extruder_temp_min/max, settings_bed_temp_min/max
- Keep old columns for backward compatibility (marked deprecated)
- Alembic migration copies existing values to both min and max
- Update Pydantic models and API endpoints

Frontend changes:
- Filament model updated with new fields
- Create form uses min/max input pairs with Space.Compact
- Import from external DB populates both min and max with same value
- Label template updated to show ranges: "ET: 190-220 °C"
- Template help includes new tags

Labels now display temperature ranges like "190-220°C" which is more
useful for printing than a single recommended value.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 20:05:02 -06:00
66e956f021 feat: Add layout max-width for better UX on wide screens (#4)
Some checks failed
CI / style (push) Has been cancelled
CI / build-client (push) Has been cancelled
CI / build-amd64 (push) Has been cancelled
CI / build-tester (push) Has been cancelled
CI / test (cockroachdb) (push) Has been cancelled
CI / test (mariadb) (push) Has been cancelled
CI / test (postgres) (push) Has been cancelled
CI / test (sqlite) (push) Has been cancelled
CI / build-arm64 (push) Has been cancelled
CI / build-armv7 (push) Has been cancelled
CI / publish-images (push) Has been cancelled
CI / publish-release (push) Has been cancelled
Changes:
- Add 1400px max-width container in SpoolmanLayout
- Add 800px max-width for forms via CSS override

This prevents the UI from feeling too spread out on wide monitors
and MacBooks, improving readability and reducing eye movement.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 19:59:38 -06:00
d17a66b0ec feat: Add configurable QR code sizing options (#3)
Some checks failed
CI / style (push) Has been cancelled
CI / build-client (push) Has been cancelled
CI / build-amd64 (push) Has been cancelled
CI / build-tester (push) Has been cancelled
CI / test (cockroachdb) (push) Has been cancelled
CI / test (mariadb) (push) Has been cancelled
CI / test (postgres) (push) Has been cancelled
CI / test (sqlite) (push) Has been cancelled
CI / build-arm64 (push) Has been cancelled
CI / build-armv7 (push) Has been cancelled
CI / publish-images (push) Has been cancelled
CI / publish-release (push) Has been cancelled
Addresses https://github.com/Donkie/Spoolman/issues/671

Changes:
- Remove fixed 50% max-width constraint on QR code container
- Add qrCodePadding setting (0-10mm, default 2mm) for white space
- Add qrCodeMaxWidth setting (0-100%, 0 = auto/fit-content)
- Add UI controls (slider + input) for both new settings
- Settings are disabled when QR code is turned off

The previous behavior forced QR codes to 50% width when label text
was shown, wasting label space on small labels. New default uses
fit-content for optimal sizing while allowing manual control.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 19:57:52 -06:00
478806dcc8 feat: Add smart density defaults based on material type (#2)
Some checks failed
CI / style (push) Has been cancelled
CI / build-client (push) Has been cancelled
CI / build-amd64 (push) Has been cancelled
CI / build-tester (push) Has been cancelled
CI / test (cockroachdb) (push) Has been cancelled
CI / test (mariadb) (push) Has been cancelled
CI / test (postgres) (push) Has been cancelled
CI / test (sqlite) (push) Has been cancelled
CI / build-arm64 (push) Has been cancelled
CI / build-armv7 (push) Has been cancelled
CI / publish-images (push) Has been cancelled
CI / publish-release (push) Has been cancelled
Auto-fill density when entering material type in filament forms:
- Add materialDefaults.ts with standard densities for common materials
  (PLA, ABS, PETG, TPU, PC, etc.)
- Material field now uses AutoComplete with suggestions
- Density auto-fills on material select or blur (fuzzy matching)
- New filaments default to 1.75mm diameter and 1.24 g/cm³ (PLA)
- Applied to both full filament create page and quick create modal

Reduces tedious data entry for common materials while still allowing
custom values for specialty filaments.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 19:54:30 -06:00
ea5b06493c feat: Add inline creation modals for filament and vendor (#1)
Some checks failed
CI / style (push) Has been cancelled
CI / build-client (push) Has been cancelled
CI / build-amd64 (push) Has been cancelled
CI / build-tester (push) Has been cancelled
CI / test (cockroachdb) (push) Has been cancelled
CI / test (mariadb) (push) Has been cancelled
CI / test (postgres) (push) Has been cancelled
CI / test (sqlite) (push) Has been cancelled
CI / build-arm64 (push) Has been cancelled
CI / build-armv7 (push) Has been cancelled
CI / publish-images (push) Has been cancelled
CI / publish-release (push) Has been cancelled
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>
2026-01-14 19:33:25 -06:00
Donkie
cda756557d Updated react qr scanner 2026-01-06 13:05:54 +01:00
Donkie
b627e151a8 Updated client packages 2026-01-06 01:54:09 +01:00
Donkie
9baf91380a Merge pull request #717 from ajford/spool_edit_weight_iss477
Fix Spool Edit page Empty Weight and Initial Weight bug
2026-01-05 22:58:42 +01:00
JakobGue
185c8b07e0 remove show spool count option from settings 2026-01-04 00:54:19 +01:00
ajford
25f78e90e6 Fixes #477 by defaulting to spool values first 2025-06-27 00:29:23 -05:00
JakobGue
d3181382ae add spool count in locations with a setting to enable / disable the display 2025-06-21 19:26:39 +02:00
Donkie
8bfb263858 Merge branch 'master' into master 2025-05-31 19:52:01 +02:00
Nícolas Pastorello
b6ed0cb6e9 Update index.tsx 2025-05-05 16:37:34 -03:00
Matt Gerega
4e10f1019d Add Measured Weight option to the filament adjustment modal #560 2025-03-20 16:52:14 -04:00
Charalampos Tsachakis
dbdad84120 Merge branch 'master' into adjust-spool-button-on-show 2025-03-19 09:07:08 +02:00
Donkie
dcb21f71cb Added auto focus to adjust spool input field
Resolves #585
2025-03-18 21:36:57 +01:00
Donkie
aa839b08e5 Handle input number formatting better
Now it doesn't interfer with the user writing until the user leaves the element

Resolves #633
Resolves #632
2025-03-18 21:27:00 +01:00
Donkie
3d1bb70913 Fixed not being able to change color picker format
Resolves #610
2025-03-18 21:09:19 +01:00
Donkie
6f01f372d6 Remove debug logging from numberFormatter function 2025-03-18 21:03:19 +01:00
Donkie
a775beb5bf Fixed wonky trailing zero removal
Resolves #623
2025-03-18 20:59:57 +01:00
Donkie
a94163dc1a Fixed empty default values extra field range breaking page
Resolves #652
2025-03-18 20:51:26 +01:00
Donkie
3fc2f712e3 Fixed a deprecation 2025-03-18 20:44:28 +01:00
Donkie
f041207db8 Fixed broken antd elements
Resolves #655
2025-03-18 20:38:48 +01:00
Donkie
dde468ed69 Add Japanese, Brazilian Portuguese, Tamil, and Thai locales to i18n.ts 2025-03-18 20:32:43 +01:00
Donkie
53d5fdf7e3 Remove country code flags in language selector 2025-03-18 20:31:53 +01:00
Pedro Lamas
3963ec6203 Reset multi-color when single color is selected 2025-03-12 18:10:26 +00:00
Donkie
cd274a9968 Updated client dependencies 2025-02-24 21:46:56 +01:00
Donkie
4b08f27614 Merge pull request #624 from bdchik/fix
Bug Fix:  Ensure the QR code favicon.svg honors the base path, when configured.
2025-02-24 21:04:19 +01:00
Donkie
58a6233e7b Merge pull request #582 from ErikMichelson/feat/round-prices-setting
Add setting to toggle rounding of prices
2025-02-24 20:56:44 +01:00
Donkie
03815687ff Merge pull request #526 from Pantastisch/feature/hex-color-code-in-filament-page
Add Color Code Display for Single Color Filaments
2025-02-24 20:48:31 +01:00
Charalampos Tsachakis
53da38e396 Added adjust spool button
Added adjust spool button to spools/show page
2025-02-12 11:31:11 +02:00
Brett Chik
c5878883a8 Link to print label from spool details page missing getBasePath() 2025-02-07 20:24:03 -08:00
Brett Chik
21befc2993 Ensure the QR code icon honors the base path, when configured. 2025-02-07 20:09:29 -08:00
Erik Michelson
e93f89aa51 Add setting to toggle rounding of prices 2024-12-30 01:07:38 +01:00
Panagiotis Doulgeris
6b2dbda354 Add possibility to exclude margin in spool icon for overview sites 2024-12-22 15:38:05 +01:00
Donkie
a3be91b89c Fixed not being able to clear price field
Resolves #525
2024-11-25 20:39:24 +01:00
Donkie
04920e463a Fixed number precision in locations page spool card 2024-11-25 19:07:24 +01:00
Donkie
46a9097491 Final locations updates 2024-11-24 15:04:20 +01:00
Donkie
d142b0eaec Include the custom locations in spool edit page 2024-11-24 14:51:15 +01:00
Donkie
0827cc8a5a Improvements to default location 2024-11-24 14:45:16 +01:00
Donkie
755e06c989 Now goes back to loc page on edit submit 2024-11-24 12:31:38 +01:00
Donkie
1a55855ce9 Some i18n stuff 2024-11-23 23:16:41 +01:00