mirror of
https://github.com/jhbruhn/respira.git
synced 2026-01-27 02:13:41 +00:00
Added shadcn Tooltip component for interactive pattern information. Wrapped all PatternInfo stat boxes and color swatches in tooltips with detailed metadata and explanations. Migrated PatternSummaryCard to use CardHeader/CardTitle/CardDescription for better semantic structure. Fixed Card component spacing issues across all cards. Changes: - Installed and added shadcn Tooltip component - Added tooltips to Size, Stitches, and Colors stat boxes with explanatory text - Wrapped color swatches in Tooltips with detailed thread information - Added Separator between pattern stats and colors sections - Migrated PatternSummaryCard to use CardHeader with semantic title/description - Fixed Card gap-0 on all cards (FileUpload, PatternSummaryCard, ConnectionPrompt) - Added explicit padding to PatternSummaryCard: CardHeader (p-4 pb-3) and CardContent (px-4 pt-0 pb-4) - Updated components.json to use src/ paths instead of @/ aliases to fix shadcn install location 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
83 lines
2.8 KiB
JSON
83 lines
2.8 KiB
JSON
{
|
|
"name": "respira",
|
|
"productName": "Respira",
|
|
"version": "0.0.0",
|
|
"description": "Desktop controller for the Brother PP-1 SKiTCH embroidery machine",
|
|
"author": "jhbruhn <respira@jhbruhn.de>",
|
|
"private": true,
|
|
"license": "Apache-2.0",
|
|
"main": ".vite/build/main.js",
|
|
"scripts": {
|
|
"lint": "eslint .",
|
|
"web:dev": "vite --host 0.0.0.0",
|
|
"web:preview": "vite preview",
|
|
"web:build": "tsc -b && vite build",
|
|
"test": "vitest",
|
|
"test:ui": "vitest --ui",
|
|
"test:run": "vitest run",
|
|
"electron:dev": "vite --mode electron",
|
|
"electron:start": "electron-forge start",
|
|
"electron:package": "electron-forge package",
|
|
"electron:make": "electron-forge make",
|
|
"electron:icons": "electron-icon-builder --input=./public/icons/icon.png --output=./public -f"
|
|
},
|
|
"dependencies": {
|
|
"@heroicons/react": "^2.2.0",
|
|
"@radix-ui/react-alert-dialog": "^1.1.15",
|
|
"@radix-ui/react-dialog": "^1.1.15",
|
|
"@radix-ui/react-popover": "^1.1.15",
|
|
"@radix-ui/react-progress": "^1.1.8",
|
|
"@radix-ui/react-separator": "^1.1.8",
|
|
"@radix-ui/react-slot": "^1.2.4",
|
|
"@radix-ui/react-tooltip": "^1.2.8",
|
|
"@tailwindcss/vite": "^4.1.17",
|
|
"@types/web-bluetooth": "^0.0.21",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"electron-squirrel-startup": "^1.0.1",
|
|
"electron-store": "^10.0.0",
|
|
"konva": "^10.0.12",
|
|
"lucide-react": "^0.562.0",
|
|
"pyodide": "^0.29.0",
|
|
"react": "^19.2.0",
|
|
"react-dom": "^19.2.0",
|
|
"react-konva": "^19.2.1",
|
|
"tailwind-merge": "^3.4.0",
|
|
"tailwindcss": "^4.1.17",
|
|
"update-electron-app": "^3.1.2",
|
|
"zustand": "^5.0.9"
|
|
},
|
|
"devDependencies": {
|
|
"@electron-forge/cli": "^7.10.2",
|
|
"@electron-forge/maker-deb": "^7.10.2",
|
|
"@electron-forge/maker-dmg": "^7.10.2",
|
|
"@electron-forge/maker-rpm": "^7.10.2",
|
|
"@electron-forge/maker-squirrel": "^7.10.2",
|
|
"@electron-forge/maker-zip": "^7.10.2",
|
|
"@electron-forge/plugin-vite": "^7.10.2",
|
|
"@electron/typescript-definitions": "^8.15.6",
|
|
"@eslint/js": "^9.39.1",
|
|
"@reforged/maker-appimage": "^5.1.1",
|
|
"@types/electron-squirrel-startup": "^1.0.2",
|
|
"@types/node": "^24.10.1",
|
|
"@types/react": "^19.2.5",
|
|
"@types/react-dom": "^19.2.3",
|
|
"@vitejs/plugin-react": "^5.1.1",
|
|
"@vitest/ui": "^4.0.15",
|
|
"electron": "^39.2.6",
|
|
"electron-icon-builder": "^2.0.1",
|
|
"eslint": "^9.39.1",
|
|
"eslint-config-prettier": "^10.1.8",
|
|
"eslint-plugin-prettier": "^5.5.4",
|
|
"eslint-plugin-react-hooks": "^7.0.1",
|
|
"eslint-plugin-react-refresh": "^0.4.24",
|
|
"globals": "^16.5.0",
|
|
"prettier": "3.7.4",
|
|
"shadcn": "^3.6.2",
|
|
"typescript": "~5.9.3",
|
|
"typescript-eslint": "^8.46.4",
|
|
"vite": "^7.2.4",
|
|
"vite-plugin-static-copy": "^3.1.4",
|
|
"vitest": "^4.0.15"
|
|
}
|
|
}
|