diff --git a/CLAUDE.md b/CLAUDE.md index 2e3da68..e0262fe 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -136,6 +136,10 @@ This is a fork with UX improvements. Issues are tracked on the Gitea instance ab | 8 | (see Gitea #8) | ✅ DONE | | 9 | Hierarchical Locations (Room/Bin) | Open | | 10 | Database Import/Export | ✅ DONE | +| 11 | Theme Colors | ✅ DONE | +| 12 | Clickable Dashboard Cards | ✅ DONE | +| 13 | QR Code Size Setting | ✅ DONE | +| 14 | Parse Temps from Comments | Open | ### Issue #1 Complete - Inline Creation Modals @@ -288,42 +292,55 @@ VITE_APIURL=http://localhost:7912/api/v1 npm run dev Access at http://localhost:5173 -### Dev Mode Styling +### Issue #11 Complete - Theme Colors -Files modified for dev version visual distinction: -- `client/src/contexts/color-mode/index.tsx` - Teal primary color (#0891b2) -- `client/src/components/layout.tsx` - "DEV BUILD" banner and badge +Added theme color selector with 5 color options: +- `client/src/contexts/color-mode/index.tsx` - Theme color system with THEME_COLORS constant +- Colors: orange, teal, red, green, blue +- Persists in localStorage +- Settings page has color selector buttons -Set `IS_DEV = false` in layout.tsx to disable dev styling. +### Issue #12 Complete - Clickable Dashboard Cards + +Dashboard cards now link to their respective list pages: +- `client/src/pages/home/index.tsx` - Card body is clickable, links to list +- Only the + button stays independent (for create) + +### Issue #13 Complete - QR Code Size Setting + +Added explicit QR code size control: +- `client/src/pages/printing/printing.tsx` - Added `qrCodeSize` to interface +- `client/src/pages/printing/qrCodePrintingDialog.tsx` - Slider for size in mm (0=auto) + +--- + +## Deployment + +### Production (Unraid) + +Deployed on Unraid with br0 network: +- **URL:** http://192.168.0.11:8000 or https://spoolman.nastynas.xyz +- **Database:** SQLite +- **Network:** br0 (own IP: 192.168.0.11) + +Update script: `/mnt/user/appdata/spoolman2-build/update.sh` + +```bash +ssh root@192.168.0.5 "/mnt/user/appdata/spoolman2-build/update.sh" +``` --- ## Known Issues / TODO +### Parse Temperature from Comments +Some filaments have temp info in comment field (e.g., "extrude 190-230 / bed 50-70") but not in the min/max fields. Could add a migration or button to parse and populate. + ### Filament Select Not Refreshing After Inline Creation When creating a filament via the inline modal on spool create page, the select dropdown doesn't immediately show the new filament with its name (shows ID instead). -Attempted fixes: -- Added `refetch` from `useGetFilamentSelectOptions` hook -- Called `await refetchFilaments()` before setting form value - -Still not working reliably. May need to investigate react-query cache invalidation timing or add the new option manually to the select options array. - ### 3dfilamentprofiles Sample Data -The 3dfp GitHub repo only contains sample data (3 filaments). The full dataset may require: -- Using their website API directly (may need auth) -- Waiting for them to publish full JSON exports -- Current implementation uses `sample-filaments.json` from the repo - -### Next Up: Docker Deployment to Unraid -Build and deploy this fork as a Docker container on Unraid with SQLite. - -Steps: -1. Build Docker image from this repo -2. Push to registry (Docker Hub or Gitea) -3. Deploy on Unraid with br0 network (own IP) -4. Use SQLite (no external DB dependency) -5. Import data via Settings → Import +The 3dfp GitHub repo only contains sample data (3 filaments). The full dataset may require using their website API directly. ### Future: Issue #9 - Hierarchical Locations Add room/bin/shelf support for locations. See Gitea issue #9 for details.