| { | |
| "name": "frontend", | |
| "private": true, | |
| "version": "0.0.0", | |
| "type": "module", | |
| "scripts": { | |
| "dev": "vite", | |
| "build": "tsc -b && vite build", | |
| "lint": "eslint .", | |
| "preview": "vite preview", | |
| "test": "vitest", | |
| "test:ui": "vitest --ui", | |
| "test:coverage": "vitest --coverage" | |
| }, | |
| "dependencies": { | |
| "@tonejs/midi": "^2.0.28", | |
| "@xmldom/xmldom": "^0.8.11", | |
| "react": "^19.2.0", | |
| "react-dom": "^19.2.0", | |
| "tone": "^15.1.3", | |
| "vexflow": "^4.2.4", | |
| "zustand": "^5.0.3" | |
| }, | |
| "devDependencies": { | |
| "@eslint/js": "^9.39.1", | |
| "@testing-library/jest-dom": "^6.1.5", | |
| "@testing-library/react": "^15.0.0", | |
| "@testing-library/user-event": "^14.5.1", | |
| "@types/node": "^24.10.1", | |
| "@types/react": "^19.2.5", | |
| "@types/react-dom": "^19.2.3", | |
| "@vitejs/plugin-react": "^5.1.1", | |
| "@vitest/coverage-v8": "^1.1.0", | |
| "@vitest/ui": "^1.1.0", | |
| "eslint": "^9.39.1", | |
| "eslint-plugin-react-hooks": "^7.0.1", | |
| "eslint-plugin-react-refresh": "^0.4.24", | |
| "globals": "^16.5.0", | |
| "jsdom": "^23.0.1", | |
| "typescript": "~5.9.3", | |
| "typescript-eslint": "^8.46.4", | |
| "vite": "^7.2.4", | |
| "vitest": "^1.1.0" | |
| } | |
| } | |